Commit graph

432 commits

Author SHA1 Message Date
Pedro J. Estébanez
922cf9fbb0 Fix crash on node duplication
That happened when an instanced scene was being duplicated while it also contained nodes added to it in the scene holding the instance.

Plus:
- Add comments about the logic behind all this.
- Move the null guard to where it can protect the most, but consider it a runtime error rather that a situation we expect.

Fixes #13282.
2017-11-25 21:14:35 +01:00
Pedro J. Estébanez
d0e09d84f0 Implement onion skinning for the animation editor 2017-11-25 13:25:14 +01:00
Juan Linietsky
bc2e8d99e5 Made Vector::ptrw explicit for writing, compiler was sometimes using the wrong function,
leading to unnecesary copy on writes and reduced performance.
2017-11-25 00:09:40 -03:00
Rémi Verschelde
2ea5ac17e8
Merge pull request #13159 from AndreaCatania/ray
Removed type_mask and fixed some variable name
2017-11-22 16:40:20 +01:00
Will Nations
e1c907ec73 Node.duplicate(): instanced node's descendants' properties now update
w/ original's runtime values.
2017-11-21 23:04:40 -06:00
AndreaCatania
d6e413bb9c Removed type_mask and fixed some variable name 2017-11-21 22:56:40 +01:00
Rémi Verschelde
613d374bc5
Merge pull request #12284 from bojidar-bg/allow-subproperty-set
Allow for getting/setting "dotted" properties of objects
2017-11-21 22:44:14 +01:00
Bojidar Marinov
0cf9597758
Allow for getting/setting indexed properties of objects using get/set_indexed
Performance is around the same as using pure set() through GDScript.
2017-11-21 20:58:21 +02:00
Rémi Verschelde
25b860ee2a
Merge pull request #13132 from Chaosus/preserve_dupsignals_flags
Preserve duplicate signal flags
2017-11-21 14:25:50 +01:00
Chaosus
fc74dbabd5 Preserve duplicate signal flags 2017-11-21 11:46:19 +03:00
Bernhard Liebl
80ad8afc85 Native pan and zoom for macOS 2017-11-21 09:11:39 +01:00
Pedro J. Estébanez
5a0be858f4 Let SceneTreeDock duplicate nodes via Node::duplicate()
Helps with #11182.
2017-11-19 21:30:17 +01:00
Pedro J. Estébanez
7286966971 Remove out-of-logic assignment of instance's original scene 2017-11-19 21:30:17 +01:00
Pedro J. Estébanez
803b3934d6 Fix duplication of signals
- Partially revert 6496b53549, adding a comment about why duplications of signals must happen as a second phase.
- Add fallback logic for connections to nodes not in the duplicated hierarchy.
- Remove redundant call to `Node::_duplicate_signals()`.

Fixes #12951.
2017-11-19 15:07:05 +01:00
Ian
12b4e232b2 fix signals disconnecting on changing target node type 2017-11-13 17:44:58 -05:00
Chaosus
6496b53549 Duplicate signals fixes 2017-11-13 18:42:07 +03:00
letheed
482e07af7e Unify degree members and properties 2017-11-10 12:52:07 +01:00
letheed
ab2647a0d0 Remove deprecated rotation methods 2017-11-10 09:09:30 +01:00
Juan Linietsky
79f81b77e2 -Modules can now add custom version info (added it for Mono)
-Version string takes this version info
-Ability to download templates from the interweb (listing does not work yet)
2017-11-01 23:13:27 -03:00
Poommetee Ketson
9cadb9e5f3 Bind unbound enums, rearrange some by value 2017-10-22 01:58:02 +07:00
Poommetee Ketson
9b634180aa Refactor Fixed to Physics 2017-10-21 21:28:08 +07:00
Rémi Verschelde
f2f75d1f11 Merge pull request #12149 from endragor/check-input-handled
Check if input is handled before handling it
2017-10-20 22:47:31 +02:00
Rémi Verschelde
067fc88488 Merge pull request #12224 from NathanWarden/scene_tree_added_signal
Added a node_added signal to the SceneTree
2017-10-20 22:10:47 +02:00
geequlim
eeacae563c Fix window display shrink can't set to float numbers 2017-10-20 12:52:18 +02:00
Nathan Warden
999ad9c0a8 Added a node_added signal to the SceneTree 2017-10-19 10:46:00 -05:00
Poommetee Ketson
f9f3829bd2 Fix Viewport clear mode is bool instead of int, fixes #12202 2017-10-19 18:17:11 +07:00
Ruslan Mustakov
5da02a0d9c Check if input is handled before handling it 2017-10-16 19:13:33 +07:00
AndreaCatania
4537977d6d Renamed fixed_process to physics_process 2017-09-30 16:19:07 +02:00
Rémi Verschelde
5567cbe6ae Merge pull request #11545 from Paulb23/line_edit_caret_blink_resetting_issue_10764
Fixed caret blink and speed resetting in scenes, issue 10764

[ci skip]
2017-09-25 23:10:32 +02:00
Poommetee Ketson
0761efaf36 Merge pull request #11552 from Tetane/master
Add missing constant binding STRETCH_ASPECT_EXPAND in SceneTree
2017-09-25 19:20:52 +07:00
Tetane
b3f3a91e15 Add a missing constant binding in SceenTree
Add missing constant binding "STRETCH_ASPECT_EXPAND" 
(I cannot test it because godot does not compile anymore on my pc (windows10))
2017-09-24 20:29:18 +02:00
Paulb23
8b80e97338 Fixed caret blink and speed resetting in scenes, issue 10764 2017-09-24 17:22:47 +01:00
Rémi Verschelde
a1779c9044 Merge pull request #11013 from MednauN/master
Fix duplication of node with script
2017-09-21 10:53:58 +02:00
Rémi Verschelde
4820dfc570 Let queue_free() work on nodes which are not in the scene tree
In practice such nodes could directly be free()'ed, but this little change
prevents users from leaking memory by mistake.
Closes #9074.
2017-09-20 21:49:56 +02:00
letheed
5ad9be4c24 Rename pos to position in user facing methods and variables
Rename user facing methods and variables as well as the corresponding
C++ methods according to the folloming changes:

* pos -> position
* rot -> rotation
* loc -> location

C++ variables are left as is.
2017-09-20 13:11:10 +02:00
Evgeny Zuev
521280ec44 Fix duplication of node with script
When duplicating node with script, properties of script
weren't copied sometimes.
It happened because properties were copied in arbitrary
order, and properties of the script were setted before the
"script" property itself, i.e. while script is sill NULL.

Also, DUPLICATE_SCRIPTS flag wasn't working - script was
always copied because `_duplicate` looked for
"script/script" property while it should be just "script".

Now "script" property is being set before all others,
and "script/script" changed to
`CoreStringNames::get_singleton()->_script`.
2017-09-20 10:56:31 +07:00
Maxim Sheronov
0fffa45158 Fix enums bindings
Add missed bindings for enums
Move some enums to class to have correct output of api.json
2017-09-13 20:57:07 +03:00
Rémi Verschelde
aabbd00284 Merge pull request #10908 from hpvb/fix-unused-variables
Fix unused variable warnings
2017-09-12 12:55:53 +02:00
Rémi Verschelde
0f006994d8 Merge pull request #11007 from saltares/issue-9988
Renames _add_child_below_node() to add_child_below_node(). Fixes #9988.
2017-09-12 12:04:03 +02:00
Rémi Verschelde
3941e01a57 Merge pull request #11041 from hpvb/fix-clang-format-error
Fix serveral recent new clang-format errors

[ci skip]
2017-09-12 11:16:36 +02:00
Bojidar Marinov
ebee9898ca
Fix duplication of nodes resulting in shared metadata
Fixes #9547
2017-09-11 12:34:36 +03:00
Hein-Pieter van Braam
b2a38854fd Fix unused variable warnings
The forth in my quest to make Godot 3.x compile with -Werror on GCC7
2017-09-08 15:03:53 +02:00
Hein-Pieter van Braam
5e18967d77 Fix serveral recent new clang-format errors 2017-09-08 00:20:16 +02:00
Juan Linietsky
1eeda0f32f Restored auto snapping of controls to pixels, fixes #10847 and probably several more issues. Made it optional in the project settings but defaults to true. 2017-09-07 11:22:07 -03:00
David Saltares
0549484c77 Renames _add_child_below_node() to add_child_below_node(). Closes #9988. 2017-09-05 22:43:28 +01:00
Hein-Pieter van Braam
9c63ab99f0 Fix use of unitialized variables
The second in my quest to make Godot 3.x compile with -Werror on GCC7
2017-09-02 01:59:26 +02:00
Poommetee Ketson
ed606ded52 Fix files header 2017-09-01 21:07:55 +07:00
Juan Linietsky
5653477a30 Exposed new ClearMode function to Viewport clases, closes #9995 2017-08-31 11:15:10 -03:00
Juan Linietsky
4d4c1dfc1b Do not error flood if removing default environment. Closes #9945 2017-08-31 08:56:15 -03:00
Rémi Verschelde
7ad14e7a3e Dead code tells no tales 2017-08-27 22:13:45 +02:00
Rémi Verschelde
bd282ff43f Use HTTPS URL for Godot's website in the headers 2017-08-27 14:16:55 +02:00
Poommetee Ketson
87917e769f Viewport: fix 'size' binding from Rect2 to Vector2 2017-08-27 12:03:19 +07:00
Rémi Verschelde
6e7f0190ee Merge pull request #10579 from quinnyo/rpc-sender-id
Method to get ID of RPC calling peer
2017-08-27 02:11:30 +02:00
Hein-Pieter van Braam
3e25cf9e05 Add two missing Null checks
These Null checks were removed in #10581 but actually changed the
logic of the functions in this case.

This fixes #10654
2017-08-26 23:40:45 +02:00
Rémi Verschelde
3c5ce736e6 Node: Add debug info to add_child reparenting check
Use it to remove buggy add_child in EditorAudioBus
2017-08-26 18:14:42 +02:00
Juan Linietsky
1894157c9f -Massive clean up to gizmos
-Make sure handles are always visible (on top)
-Fixed instanced scene selection (should work properly now)
-Added interpolated camera
-Customizable gizmo colors in editor settings
2017-08-26 00:47:28 -03:00
Hein-Pieter van Braam
cacced7e50 Convert Object::cast_to() to the static version
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-24 23:08:24 +02:00
Quinn Schwab
7c802837a3 add SceneTree method to get ID of rpc calling peer 2017-08-23 18:43:25 +10:00
Marcelo Fernandez
1b6c9f7076 Add missing NULL check for the new show_about() call 2017-08-22 14:21:18 -03:00
Rémi Verschelde
b3ff7ca62e Fix build after merge of #10254 2017-08-22 01:16:33 +02:00
Rémi Verschelde
13f879587d Merge pull request #10254 from marcelofg55/master
Added notification const NOTIFICATION_WM_ABOUT
2017-08-22 00:56:31 +02:00
Juan Linietsky
2cc8309249 Merge pull request #10351 from neikeq/enums-are-for-the-weak
ClassDB: Provide the enum name of integer constants
2017-08-21 19:56:08 -03:00
Rémi Verschelde
d37bd15cb9 Merge pull request #10443 from karroffel/propagate_call
add "propagate_call" method to Node
2017-08-21 23:21:47 +02:00
Wilson E. Alvarez
0017e21521 Fixed segfault when hovering over scene tree elements and showing tooltips. 2017-08-20 22:28:07 -04:00
Ignacio Etcheverry
32dd9a9f66 ClassDB: Provide the enum name of integer constants 2017-08-20 22:07:43 +02:00
Juan Linietsky
541fdffc0a Merge pull request #10319 from neikeq/pr-engine-editor-hint
Adds Engine::is_editor_hint() method
2017-08-20 12:55:46 -03:00
Karroffel
390f7def39 add "propagate_call" method to Node
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-19 15:22:37 +02:00
Juan Linietsky
bf1f83ed29 Small fix that makes overal UI (including dragging spliiters) much, much faster.
Flushing messages meant that for every event, UI was reaccomodating everything. This is relly slow.
Messages will have to happen sometime later, during iteration most likely.
I still can't fix the overall code editor slowness on Mesa+Radeon, I suspect it's a driver issue.
2017-08-18 23:01:27 -03:00
Ignacio Etcheverry
90b8a5b71e Removes editor_hint from SceneTree 2017-08-19 01:29:45 +02:00
Marcelo Fernandez
aae29c7a0e Added notification const NOTIFICATION_WM_ABOUT 2017-08-17 11:28:45 -03:00
TwistedTwigleg
00f6c85928 Synchronize parameter names in definition and declaration
Fixes #10244.
2017-08-16 17:22:23 +02:00
Pedro J. Estébanez
213ad45ccf Allow zero-padded serial naming
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-16 03:26:47 +02:00
kubecz3k
129ebca41d Merge pull request #9889 from groud/control_enhancements
Control node enhancements
2017-08-15 22:55:49 +02:00
Juan Linietsky
860816f3d3 Fix debug materials, closes #8607 2017-08-15 17:21:05 -03:00
Juan Linietsky
fdc2cdef0b Ensure nothing is found outside modal stack, but keep logic going. Fixes #7622 2017-08-15 07:32:15 -03:00
Gilles Roudiere
0d35d4d53b Replace GUI anchor type by a float between 0 and 1 2017-08-13 21:20:13 +02:00
Rémi Verschelde
23f6d3fa69 Merge pull request #10198 from jjay/f/stretch_aspect_expand
Add "expand" option for stretch aspect, no more black bars
2017-08-11 15:55:22 +02:00
Ignacio Etcheverry
78619a5866 Fixes method definitions with extra number of arguments 2017-08-10 07:17:51 +02:00
Ignacio Etcheverry
2f290038d6 Removes type information from method binds 2017-08-10 07:17:50 +02:00
Yakov Borevich
b2ca500545 Add expand stretch/ascpect - no more black bars 2017-08-09 12:26:33 +03:00
Juan Linietsky
2a6cdfaf91 -Fixed BoneAttachment delay, closes #3966
-Fixed skeleton crash, probably fixes other issues
2017-08-07 22:18:12 -03:00
Thomas Herzog
5ada918d9f Merge pull request #10136 from MednauN/master
Add handling of touch events in _gui_input_event
2017-08-07 22:23:30 +02:00
Rémi Verschelde
3121b3a4f4 Merge pull request #10141 from ISylvox/lower_case_godot_api
Makes all Godot API's Methods lower_case
2017-08-07 14:59:39 +02:00
Indah Sylvia
5ae78fdf6a Makes all Godot API's methods Lower Case 2017-08-07 18:24:35 +07:00
Rémi Verschelde
a2cedd81d4 Merge pull request #9394 from supagu/sync-rpc-fix
Queue RPC packet before calling method locally to ensure correct RPC …
2017-08-07 11:01:26 +02:00
Evgeny Zuev
60230675d9 Add handling of touch events in _gui_input_event
Fixes #10039
2017-08-07 15:14:50 +07:00
Juan Linietsky
cfe4b30941 renamed node path, closes #5691 2017-08-05 09:13:59 -03:00
Rémi Verschelde
62464839ad Merge pull request #8567 from BastiaanOlij/ar_vr_server
AR/VR base classes and position tracker support
2017-07-31 13:29:18 +02:00
Rémi Verschelde
76005a8e75 Style: Apply clang-format on all files
Thus fixing some invalid changes that had still made it to the master branch.
2017-07-30 22:53:40 +02:00
BastiaanOlij
d2ba2d0873 Adding base classes and structures for ARVR support
Added ArVrScriptInterface

Added ARVRCamera, ARVRController and ARVROrigin helper objects
2017-07-28 10:39:15 +10:00
Pedro J. Estébanez
6c1b7fd899 Fix Node::move_child() crash if moving to the end plus one
Fixes #9820.
2017-07-25 05:20:30 +02:00
Rémi Verschelde
374cffaa11 Merge pull request #9764 from Noshyaar/pr-fix2
Add object type hint for docs
2017-07-24 08:07:32 +02:00
Poommetee Ketson
2777f81d29 Add object type hint for docs 2017-07-23 18:57:03 +07:00
Juan Linietsky
772485cdb3 Several changes to better run in mobile. 2017-07-22 14:08:17 -03:00
Juan Linietsky
25678b1876 -Renamed GlobalConfig to ProjectSettings, makes more sense.
-Added system for feature overrides, it's pretty cool :)
2017-07-19 17:06:03 -03:00
Poommetee Ketson
49c7620326 Add object type hint for docs 2017-07-19 02:03:34 +07:00
Juan Linietsky
bbada82f80 -Reorganized all properties of project settings (Sorry, Again).
(Lot's of bloat accumulated, so it was time for clean up.)
-Made EditorSettings and ProjectSettings search more useful (search in sections too)
2017-07-17 22:18:58 -03:00
Juan Linietsky
5e361ba2ea Script editor usability fixes 2017-07-15 09:35:29 -03:00
Pedro J. Estébanez
c061044d78 Fix picking list flood while mouse capture enabled
Fixes #9575.
2017-07-10 17:48:57 +02:00
Juan Linietsky
e63c64e256 Clean up normalmapping, make sure tangents are imported correctly. 2017-07-03 10:45:34 -03:00