summaryrefslogtreecommitdiffstats
path: root/core/object.cpp
Commit message (Collapse)AuthorAgeFilesLines
...
| * Notify instance binding data api of refcount increment/decrementIgnacio Etcheverry2018-08-231-1/+6
| |
* | Add print_verbose to print to stdout only in verbose modeRémi Verschelde2018-08-241-3/+3
| | | | | | | | | | | | Equivalent of the cumbersome: if (OS::get_singleton()->is_stdout_verbose()) print_line(msg);
* | Crash fixes for material and animtreeJuan Linietsky2018-08-201-5/+11
| |
* | Massive rewrite to AnimationTree. Many APIs changed in order to:Juan Linietsky2018-08-201-3/+20
| | | | | | | | | | -Reuse resources -Expose properties in AnimationTree
* | Merge pull request #20583 from neikeq/issue-15371Rémi Verschelde2018-08-141-9/+64
|\ \ | | | | | | Fix case where exported properties value is lost
| * | Fix case where exported properties value is lostIgnacio Etcheverry2018-07-291-9/+64
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes exported property modified values lost when creating a placeholder script instance with a failed script compilation - Object set/get will call PlaceHolderScriptInstance's new fallback set/get methods as a last resort. This way, placeholder script instances can keep the values for storage or until the script is compiled successfuly. - Script::can_instance() will only return true if a real script instance can be created. Otherwise, in the case of placeholder script instances, it will return false. - Object::set_script(script) is now in charge of requesting the creation of placeholder script instances. It's no longer Script::instance_create(owner)'s duty. - PlaceHolderScriptInstance has a new method set_build_failed(bool) to determine whether it should call into its script methods or not. - Fixed a few problems during reloading of C# scripts.
* | | Ensure one shot signals are not disconnected while edited, closes #7776Juan Linietsky2018-07-291-1/+9
|/ /
* | Reduce unnecessary COW on Vector by make writing explicitHein-Pieter van Braam2018-07-261-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit makes operator[] on Vector const and adds a write proxy to it. From now on writes to Vectors need to happen through the .write proxy. So for instance: Vector<int> vec; vec.push_back(10); std::cout << vec[0] << std::endl; vec.write[0] = 20; Failing to use the .write proxy will cause a compilation error. In addition COWable datatypes can now embed a CowData pointer to their data. This means that String, CharString, and VMap no longer use or derive from Vector. _ALWAYS_INLINE_ and _FORCE_INLINE_ are now equivalent for debug and non-debug builds. This is a lot faster for Vector in the editor and while running tests. The reason why this difference used to exist is because force-inlined methods used to give a bad debugging experience. After extensive testing with modern compilers this is no longer the case.
* | Several improvements to editor inspector usability and styleJuan Linietsky2018-07-181-1/+5
| |
* | Fix return type of _get() virtual methodGeorge Marques2018-05-291-0/+1
| |
* | Add is_instance_valid() method to GDScript, ending more than a decade of pain.Juan Linietsky2018-05-071-4/+0
|/
* Bind many more properties to scriptsBojidar Marinov2018-01-121-2/+2
| | | | | | | Notable potentially breaking changes: - PROPERTY_USAGE_NOEDITOR is now PROPERTY_USAGE_STORAGE | PROPERTY_USAGE_NETWORK, without PROPERTY_USAGE_INTERNAL - Some properties were renamed, and sometimes even shadowed by new ones - New getter methods (some virtual) were added
* Add missing copyright headers and fix formattingRémi Verschelde2018-01-051-0/+1
| | | | | | Using `misc/scripts/fix_headers.py` on all Godot files. Some missing header guards were added, and the header inclusion order was fixed in the Bullet module.
* Update copyright statements to 2018Rémi Verschelde2018-01-011-2/+2
| | | | Happy new year to the wonderful Godot community!
* Style: Apply new clang-format 5.0 style to all filesRémi Verschelde2017-12-071-84/+84
|
* Made Vector::ptrw explicit for writing, compiler was sometimes using the ↵Juan Linietsky2017-11-251-2/+2
| | | | | | wrong function, leading to unnecesary copy on writes and reduced performance.
* Fix a crash in get_static_property_type_indexedBojidar Marinov2017-11-241-0/+7
| | | | Fixes #13243
* Allow for getting/setting indexed properties of objects using get/set_indexedBojidar Marinov2017-11-211-0/+123
| | | | Performance is around the same as using pure set() through GDScript.
* Fixed a bunch of typos, including an error code.Ross Hadden2017-09-211-1/+1
|
* Moved class_name and return_val to initializer listWilson E. Alvarez2017-09-141-6/+6
|
* DocData and type hints fixesIgnacio Etcheverry2017-08-291-1/+58
| | | | | | | - Makes vararg methods automatically use PROPERTY_USAGE_NIL_IS_VARIANT on return types - Completely removes the ":type" suffix for method names. Virtual methods must use the MethodInfo constructors that takes Variant::Type or PropertyHint as the first parameter for the return type (with CLASS_INFO as a helper to get the PropertyInfo). Parameters must use PROPERTY_HINT_RESOURCE_TYPE and hint string. - PROPERTY_USAGE_NIL_IS_VARIANT is no longer needed for parameters, because parameters cannot be void. - Adds missing PROPERTY_USAGE_NIL_IS_VARIANT to virtual and built-in methods that return Variant.
* Dead code tells no talesRémi Verschelde2017-08-271-196/+1
|
* Use HTTPS URL for Godot's website in the headersRémi Verschelde2017-08-271-1/+1
|
* Fix double single quotes in `connect` error printPoommetee Ketson2017-08-271-1/+1
|
* Convert Object::cast_to() to the static versionHein-Pieter van Braam2017-08-241-2/+2
| | | | | | | | | | | | Currently we rely on some undefined behavior when Object->cast_to() gets called with a Null pointer. This used to work fine with GCC < 6 but newer versions of GCC remove all codepaths in which the this pointer is Null. However, the non-static cast_to() was supposed to be null safe. This patch makes cast_to() Null safe and removes the now redundant Null checks where they existed. It is explained in this article: https://www.viva64.com/en/b/0226/
* Changed MethodBind API to request information from methods. It's much claner ↵Juan Linietsky2017-08-231-0/+4
| | | | | | now. Also changed PropertyInfo to include informatino about class names.
* ClassDB: Provide the enum name of integer constantsIgnacio Etcheverry2017-08-201-3/+3
|
* Rename localization method to `tr` againRémi Verschelde2017-08-181-4/+4
| | | | Partial revert of #10380 based on contributor ~~bullying~~ feedback.
* Rename `XL_MESSAGE` aka `tr` to `localize`Rémi Verschelde2017-08-171-9/+3
| | | | | Also renames `set_message_translation` to `set_message_localization` for consistency.
* Merge pull request #9987 from Rubonnek/move-members-to-initilization-listRémi Verschelde2017-08-111-71/+59
|\ | | | | Moved member variables from constructor to initialization list
| * Moved member variables from constructor to initialization listWilson E. Alvarez2017-08-081-71/+59
| |
* | Fixes method definitions with extra number of argumentsIgnacio Etcheverry2017-08-101-1/+1
| |
* | Removes type information from vararg method bindsIgnacio Etcheverry2017-08-101-1/+1
| |
* | Removes type information from method bindsIgnacio Etcheverry2017-08-101-8/+8
| |
* | Adds missing type information to virtual method bindsIgnacio Etcheverry2017-08-101-1/+1
|/
* Makes all Godot API's methods Lower CaseIndah Sylvia2017-08-071-8/+8
|
* Fix is_class check typo in ObjectDB::cleanupRuslan Mustakov2017-08-061-1/+1
|
* Made bool constructor explicit in Variant to avoid bugs, fixes #7843Juan Linietsky2017-08-051-6/+13
|
* function to add script and instance at once, as needed by neikeqJuan Linietsky2017-07-221-0/+11
|
* _get return type fixRamesh Ravone2017-07-181-1/+1
|
* Added a simpler/faster way to bind script languages instance wrappers to GodotJuan Linietsky2017-07-161-0/+24
|
* Bindings: Fix Object::get_meta return type.Andreas Haas2017-07-161-1/+1
| | | | The method was shown as void in the docs.
* Merge pull request #9195 from kubecz3k/obj-incoming-connectionsRémi Verschelde2017-06-271-0/+16
|\ | | | | Ability to get a list of signals that are targeting given object
| * Ability to get a list of signals that are targeting objectJakub Grzesik2017-06-151-0/+16
| |
* | -Added folding to property editor, persistent on objects it editsJuan Linietsky2017-06-251-0/+42
|/ | | | -Some changes to tree to support this properly
* -Restored multithread capability to VisualServerJuan Linietsky2017-06-091-6/+6
| | | | -Restored resource previews!
* Add "Godot Engine contributors" copyright lineRémi Verschelde2017-04-081-0/+1
|
* fixed ClassDB inconsistenciesKarroffel2017-03-131-1/+1
| | | | fixes #7960
* A Whole New World (clang-format edition)Rémi Verschelde2017-03-051-647/+528
| | | | | | | | | | | | | | | | | | | | | | | | I can show you the code Pretty, with proper whitespace Tell me, coder, now when did You last write readable code? I can open your eyes Make you see your bad indent Force you to respect the style The core devs agreed upon A whole new world A new fantastic code format A de facto standard With some sugar Enforced with clang-format A whole new world A dazzling style we all dreamed of And when we read it through It's crystal clear That now we're in a whole new world of code
* -begin of export work, not done yetJuan Linietsky2017-02-151-4/+4
| | | | -fixes to make scenes exported from godot 2.x work