summaryrefslogtreecommitdiff
path: root/scene/main/node.cpp
AgeCommit message (Collapse)Author
2017-08-24Convert Object::cast_to() to the static versionHein-Pieter van Braam
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/
2017-08-21Merge pull request #10351 from neikeq/enums-are-for-the-weakJuan Linietsky
ClassDB: Provide the enum name of integer constants
2017-08-20ClassDB: Provide the enum name of integer constantsIgnacio Etcheverry
2017-08-19add "propagate_call" method to NodeKarroffel
It is possible to propagate a notification down the Node tree by using `propagate_notification`, but there was no such method for doing the same but with method calls. This commit adds the `propagate_call` method, which calls a method on a node and all child nodes. An optional paramter `parent_first` determines whether the parent node gets called before or after the children have been visited. It defaults to false, so the parent gets called last.
2017-08-16Allow zero-padded serial namingPedro J. Estébanez
Thereby, the editor will acknowledge node namings such as _Thing003_ so that a duplicate, for instance, will be named _Thing004_, instead of _Thing4_, that was the case formerly. Closes #7758.
2017-08-10Removes type information from method bindsIgnacio Etcheverry
2017-08-07Merge pull request #10141 from ISylvox/lower_case_godot_apiRémi Verschelde
Makes all Godot API's Methods lower_case
2017-08-07Makes all Godot API's methods Lower CaseIndah Sylvia
2017-08-07Merge pull request #9394 from supagu/sync-rpc-fixRémi Verschelde
Queue RPC packet before calling method locally to ensure correct RPC …
2017-07-25Fix Node::move_child() crash if moving to the end plus onePedro J. Estébanez
Fixes #9820.
2017-07-19-Renamed GlobalConfig to ProjectSettings, makes more sense.Juan Linietsky
-Added system for feature overrides, it's pretty cool :)
2017-07-19Add object type hint for docsPoommetee Ketson
2017-07-03Clean up normalmapping, make sure tangents are imported correctly.Juan Linietsky
2017-06-26Queue RPC packet before calling method locally to ensure correct RPC packet ↵Fabian Mathews
order
2017-05-20Removal of InputEvent as built-in Variant type..Juan Linietsky
this might cause bugs I haven't found yet..
2017-05-06Fix bug in pause mode propagationFabio Alessandrelli
Pause mode was not correctly propagating effectively stopping immediately when the mode was not PAUSE_MODE_INHERIT.
2017-04-08Add "Godot Engine contributors" copyright lineRémi Verschelde
2017-04-07Reset display folded for an instanced scene if editable children is toggled offPedro J. Estébanez
This avoids the display folded flag needlessly getting into the scene file (potentially forever) and also gives more visual feedback if the user re-enables editable children so it will display unfolded at first.
2017-03-30Add missing binding for DUPLICATE_USE_INSTANCINGPedro J. Estébanez
2017-03-18Merge pull request #8037 from RandomShaper/remove-warningRémi Verschelde
Remove warning on owner re-assignment
2017-03-18Merge pull request #8014 from AlexHolly/fix-remove-and-skipRémi Verschelde
fix remove_and_skip()
2017-03-15Remove warning on owner re-assignmentPedro J. Estébanez
2017-03-12fix remove_and_skip()AlexHolly
2017-03-11Fix connection errors when replacing nodeIgnacio Etcheverry
- Avoid connecting the signals to nonexistent methods - Preserve only persistent connections
2017-03-05A Whole New World (clang-format edition)Rémi Verschelde
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
2017-02-20Add more options to Node.duplicate()Pedro J. Estébanez
to decide whether signals, groups and/or scripts should be set in the copied nodes or not; it's default value makes the method include everything, as usual
2017-02-13Rename the _MD macro to D_METHODHein-Pieter van Braam
This new name also makes its purpose a little clearer This is a step towards fixing #56
2017-02-13Remove use of _SCS from ADD_METHODHein-Pieter van Braam
This saves typing and is a step towards fixing #56
2017-01-16Style: Fix statements ending with ';;'Rémi Verschelde
2017-01-14no more errors related to missing GlobalConfig::Get (or so I hope)Juan Linietsky
2017-01-14Style: Fix whole-line commented codeRémi Verschelde
They do not play well with clang-format which aligns the `//` part with the rest of the code block, thus producing badly indented commented code.
2017-01-13Node name casing: fix mistake from previous commitRémi Verschelde
2017-01-13Reenable node name case setting + code cleanupsRémi Verschelde
The method _generate_serial_child_name is indeed called relatively often in editor mode, but that commented out code chunk hardly adds to its slowness (and with the default setting, not at all). Also did various related code cleanups and simplifications.
2017-01-12Must now register with set_transform_notify() to get ↵Juan Linietsky
NOTIFICATION_TRANSFORM_CHANGED
2017-01-12Project setting to control node name casingRay Koopa
(cherry picked from commit 87fd54b2f18928213021fef7f330d0c314cf7ac7)
2017-01-12Renamed most signals so they refer to:Juan Linietsky
-An action being requested to the user in present tense: (ie, draw, gui_input, etc) -A notification that an action happened, in past tense (ie, area_entered, modal_closed, etc).
2017-01-10- _ready() callback only happens once now, if you want to receive it again, ↵Juan Linietsky
use request_ready() - C++ Nodes mostly do an internal process callback, so it does not conflict with users willing to use their own process callbacks - callbacks such as _input, _process, _fixed_process _unhandled_input, _unhandled_key_input do not requiere calling a function to enable them. They are enabled automatically if found on the script.
2017-01-05-Changed most project settings in the engine, so they have major and minor ↵Juan Linietsky
categories. -Changed SectionedPropertyEditor to support this -Renamed Globals singleton to GlobalConfig, makes more sense. -Changed the logic behind persisten global settings, instead of the persist checkbox, a revert button is now available
2017-01-03Begin modifying properties to make them more friendly to script and doc.Juan Linietsky
2017-01-02ObjectTypeDB was renamed to ClassDB. Types are meant to be more generic to ↵Juan Linietsky
Variant. All usages of "type" to refer to classes were renamed to "class" ClassDB has been exposed to GDScript. OBJ_TYPE() macro is now GDCLASS()
2017-01-02Merge remote-tracking branch 'origin/gles3' into gles3-on-masterRémi Verschelde
Various merge conflicts have been fixed manually and some mistakes might have been made - time will tell :)
2017-01-01Welcome in 2017, dear changelog reader!Rémi Verschelde
That year should bring the long-awaited OpenGL ES 3.0 compatible renderer with state-of-the-art rendering techniques tuned to work as low as middle end handheld devices - without compromising with the possibilities given for higher end desktop games of course. Great times ahead for the Godot community and the gamers that will play our games!
2016-11-30Revert "Do not emit NOTIFICATION_READY more than once (breaking change)"Rémi Verschelde
This reverts commit b6eab006dbd21d25a664486809109fffa9533124. This commit broke compatibility in an undesired way, as outlined in https://github.com/godotengine/godot/issues/3290#issuecomment-263388003
2016-11-17Do not emit NOTIFICATION_READY more than once (breaking change)Bojidar Marinov
Currently, there is no notification with the old behaviour, so probably breaks all cpp code relying on that notification as well.
2016-11-17Guard agains duplicate calling of _ready when instanced in _enter_treeBojidar Marinov
Fixes #6005
2016-11-03Keep groups when replacing nodesIgnacio Etcheverry
2016-10-10Revise serial naming behaviorPedro J. Estébanez
2016-10-08Refactor node naming APIs used by editorPedro J. Estébanez
Make 'name_num_separator' a project setting Make all node operations separator-aware
2016-10-03Begining of GLES3 renderer:Juan Linietsky
-Most 2D drawing is implemented -Missing shaders -Missing all 3D -Editor needs to be set on update always to be used, otherwise it does not refresh -Large parts of editor not working
2016-09-07Renamed the bind_native functions to bind_vararg, should make it show the ↵Juan Linietsky
documentation more clearly and also make it easier to bind to C#