Commit Graph

109 Commits

Author SHA1 Message Date
Rémi Verschelde 0ee0fa42e6 Style: Enforce braces around if blocks and loops
Using clang-tidy's `readability-braces-around-statements`.
https://clang.llvm.org/extra/clang-tidy/checks/readability-braces-around-statements.html
2020-05-14 21:57:34 +02:00
Rémi Verschelde 07bc4e2f96 Style: Enforce separation line between function definitions
I couldn't find a tool that enforces it, so I went the manual route:
```
find -name "thirdparty" -prune \
  -o -name "*.cpp" -o -name "*.h" -o -name "*.m" -o -name "*.mm" \
  -o -name "*.glsl" > files
perl -0777 -pi -e 's/\n}\n([^#])/\n}\n\n\1/g' $(cat files)
misc/scripts/fix_style.sh -c
```

This adds a newline after all `}` on the first column, unless they
are followed by `#` (typically `#endif`). This leads to having lots
of places with two lines between function/class definitions, but
clang-format then fixes it as we enforce max one line of separation.

This doesn't fix potential occurrences of function definitions which
are indented (e.g. for a helper class defined in a .cpp), but it's
better than nothing. Also can't be made to run easily on CI/hooks so
we'll have to be careful with new code.

Part of #33027.
2020-05-14 16:54:55 +02:00
Rémi Verschelde 0be6d925dc Style: clang-format: Disable KeepEmptyLinesAtTheStartOfBlocks
Which means that reduz' beloved style which we all became used to
will now be changed automatically to remove the first empty line.

This makes us lean closer to 1TBS (the one true brace style) instead
of hybridating it with some Allman-inspired spacing.

There's still the case of braces around single-statement blocks that
needs to be addressed (but clang-format can't help with that, but
clang-tidy may if we agree about it).

Part of #33027.
2020-05-14 16:54:55 +02:00
Rémi Verschelde 2ed231521b
Merge pull request #37705 from dreamsComeTrue/editor-animation-player-improvements
Allow to rename animation just after it was duplicated in Editor
2020-04-29 09:37:53 +02:00
Rémi Verschelde fdf58a5858 Rename InputFilter back to Input
It changed name as part of the DisplayServer and input refactoring
in #37317, with the rationale that input no longer goes through the
main loop, so the previous Input singleton now only does filtering.

But the gains in consistency are quite limited in the renaming, and
it breaks compatibility for all scripts and tutorials that access
the Input singleton via the scripting language. A temporary option
was suggested to keep the scripting singleton named `Input` even if
its type is `InputFilter`, but that adds inconsistency and breaks C#.

Fixes godotengine/godot-proposals#639.
Fixes #37319.
Fixes #37690.
2020-04-28 15:19:49 +02:00
Dominik 'dreamsComeTrue' Jasiński 235f13dc51 Allow to rename animation just after it was duplicated & show animation name in Delete prompt 2020-04-10 11:48:55 +02:00
lupoDharkael 95a1400a2a Replace NULL with nullptr 2020-04-02 13:38:00 +02:00
Juan Linietsky a6f3bc7c69 Renaming of servers for coherency.
VisualServer -> RenderingServer
PhysicsServer -> PhysicsServer3D
Physics2DServer -> PhysicsServer2D
NavigationServer -> NavigationServer3D
Navigation2DServer -> NavigationServer2D

Also renamed corresponding files.
2020-03-27 15:21:27 -03:00
Rémi Verschelde d1acbbce7f Rename more 2D and 3D nodes to follow convention
Rename editor plugins to match the new node names.
2020-03-27 16:26:34 +01:00
Juan Linietsky eaae4b6408 Renamed 2D and 3D nodes to make their types explicit
Fixes #30736.
2020-03-27 14:54:04 +01:00
Juan Linietsky 441f1a5fe9 Popups are now windows also (broken!) 2020-03-26 15:49:42 +01:00
Juan Linietsky 4758057f20 Working multiple window support, including editor 2020-03-26 15:49:40 +01:00
Juan Linietsky 8e6960a69e Refactored input, goes all via windows now.
Also renamed Input to InputFilter because all it does is filter events.
2020-03-26 15:49:39 +01:00
Juan Linietsky 9e08742de8 Added a Window node, and made it the scene root.
Still a lot of work to do.
2020-03-26 15:49:38 +01:00
Juan Linietsky 4396e98834 Refactored Input, create DisplayServer and DisplayServerX11 2020-03-26 15:49:32 +01:00
Rémi Verschelde e2b66cacf7
Merge pull request #18020 from bruvzg/input_fix_non_latin_and_add_hw_scancodes
Fix non-latin layout scancodes on Linux, adds access to physical scancodes.
2020-03-01 23:00:42 +01:00
Mateo Dev .59 b8f08b42e7 Signals: Fix signals error prints for the new signal system 2020-02-28 14:24:09 +01:00
Rémi Verschelde f742dabafe Signals: Manually port most of remaining connect_compat uses
It's tedious work...

Some can't be ported as they depend on private or protected methods
of different classes, which is not supported by callable_mp (even if
it's a class inherited by the current one).
2020-02-28 14:24:09 +01:00
Rémi Verschelde 01afc442c7 Signals: Port connect calls to use callable_mp
Remove now unnecessary bindings of signal callbacks in the public API.
There might be some false positives that need rebinding if they were
meant to be public.

No regular expressions were harmed in the making of this commit.
(Nah, just kidding.)
2020-02-28 14:24:09 +01:00
bruvzg 1af06d3d46
Rename `scancode` to `keycode`.
Add `physical_keycode` (keyboard layout independent keycodes) to InputEventKey and InputMap.
Fix non-latin keyboard layout keycodes on Linux/X11 (fallback to physical keycodes).
2020-02-25 12:30:33 +02:00
Rémi Verschelde 15e6a82faf Signals: Fix invalid connections to missing callbacks
These bugs existed since those lines were added, so I assume that
their intended use is no longer relevant.
2020-02-23 23:48:44 +01:00
Juan Linietsky 69c95f4b4c Reworked signal connection system, added support for Callable and Signal objects and made them default. 2020-02-20 08:24:50 +01:00
Juan Linietsky 449df8f688 Base 3D engine done, still untested, though. 2020-02-11 11:59:25 +01:00
Rémi Verschelde 4a95186b4b Animation editor: Set resource name when duplicating
Fixes #25156.
2020-01-13 13:22:06 +01:00
Rémi Verschelde a7f49ac9a1 Update copyright statements to 2020
Happy new year to the wonderful Godot community!

We're starting a new decade with a well-established, non-profit, free
and open source game engine, and tons of further improvements in the
pipeline from hundreds of contributors.

Godot will keep getting better, and we're looking forward to all the
games that the community will keep developing and releasing with it.
2020-01-01 11:16:22 +01:00
Haoyu Qiu 078c0d75f2 Cleans up headers included in editor_node.h 2019-12-24 21:46:05 +08:00
Rémi Verschelde 2845e6a21a
Merge pull request #34040 from qarmin/unused_variable_more_precise_numbers
Removed unused variables, add some constants numbers
2019-12-10 08:25:31 +01:00
Rafał Mikrut ed1c4bc77d Removed unused variables, add some constants numbers 2019-12-10 05:13:02 +01:00
PouleyKetchoupp d900cfafa3 Fixed errors in AnimationPlayerEditor when switching current_animation in the inspector
Case 1: start and stop an animation in the inspector
Case 2: start an animation in the inspector, then stop and start again in the track editor

Fixes #34021
2019-12-01 15:45:23 +01:00
Relintai c39490cf79 Fix potential crash in AnimationPlayer. 2019-10-03 21:07:49 +02:00
Relintai c6e577fed9 Fix crash in #32473. (Automatically seek timeline in selected animation) 2019-10-03 00:00:01 +02:00
Tomasz Chabora d482bd1ef0 Automatically seek timeline in selected animation 2019-10-01 18:38:03 +02:00
Michael Alexsander Silva Dias 5ed5465023 Replace "GuiMiniTabMenu" with "GuiTabMenu" and tweak it 2019-09-25 12:53:42 -03:00
Rémi Verschelde dec10dd776
Merge pull request #32051 from qarmin/some_error_explanation
Added some obvious errors explanations
2019-09-25 11:51:54 +02:00
qarmin 17732fe698 Added some obvious errors explanations 2019-09-25 10:28:50 +02:00
Rémi Verschelde 2add51d082
Merge pull request #31964 from nekomatata/fix-animation-player-error
Fixed switching back to AnimationPlayerEditor with empty animation list
2019-09-19 20:32:05 +02:00
PouleyKetchoupp b01d07e049 Fixed switching back to animation player editor with no animation to select
Fixes #31959
2019-09-04 18:18:25 +02:00
Michael Alexsander Silva Dias 5f3a55acb7 Add informational messages to various editors 2019-09-04 12:37:11 -03:00
Hugo Locurcio 55b9c6804c
Implement precise snapping in the animation editor
Holding Shift while snapping is enabled will now make snapping
4 times as precise.
2019-09-02 15:55:44 +02:00
Hugo Locurcio 4a28657cf5
Tweak range steps in the animation editor
This makes the step of the "frame" SpinBox larger, so that clicking
on the SpinBox arrows will make the number increase in a visible manner.
Previously, the full number was being cut off due to the SpinBox
being narrow.

This also makes the "step" SpinBox allow for more precise input.
2019-08-06 12:25:53 +02:00
Hugo Locurcio 8b12498f8b
Improve snapping in the animation editor
Snapping can now be toggled temporarily by holding the Ctrl key.
Toggling timeline snapping is now done with the "Snap" checkbox rather
than by setting the animation's "Step" setting to 0.

The timeline cursor can no longer exit the animation's boundaries
if the animation's "Step" is set to 0.
2019-08-06 01:44:10 +02:00
qarmin 4e5310cc60 Some code changed with Clang-Tidy 2019-06-26 15:08:25 +02:00
Michael Alexsander Silva Dias 8a9b3d24f5 Fix minor onion layering control errors 2019-06-19 19:42:26 -03:00
Rémi Verschelde 6d16f2f053 Fix error macro calls not ending with semicolon
It's not necessary, but the vast majority of calls of error macros
do have an ending semicolon, so it's best to be consistent.
Most WARN_DEPRECATED calls did *not* have a semicolon, but there's
no reason for them to be treated differently.
2019-06-11 14:49:34 +02:00
volzhs e16e5012ca Revert "Fix AnimationPlayer editor length and step synchronization"
This reverts commit ca80ebe9f6.
2019-05-31 04:43:46 +09:00
Michael Alexsander Silva Dias 560f5cb104 Actually fix animation editor's bottom panel button not being pressed on certain occasions 2019-05-27 12:12:51 -03:00
Michael Alexsander Silva Dias c4f797644d Fix animation editor's bottom panel button not being pressed on certain occasions 2019-05-25 04:07:51 -03:00
Rémi Verschelde 04ee4f45e5
Merge pull request #24771 from timoschwarzer/animation-player-editor-pos-drag-fix
Fix AnimationPlayer editor length and step synchronization
2019-05-24 15:21:47 +02:00
Pedro J. Estébanez 88153fbb61 Fix 2D bones ignored by onion skinning
Fixes #27819.
2019-05-22 20:40:57 +02:00
Pedro J. Estébanez 3b17e6de33 Remove ghost of canvas zoom controls during onion skinning 2019-05-20 22:36:34 +02:00