summaryrefslogtreecommitdiff
path: root/editor/animation_track_editor.h
AgeCommit message (Collapse)Author
2022-05-16Replace most uses of Map by HashMapreduz
* Map is unnecessary and inefficient in almost every case. * Replaced by the new HashMap. * Renamed Map to RBMap and Set to RBSet for cases that still make sense (order matters) but use is discouraged. There were very few cases where replacing by HashMap was undesired because keeping the key order was intended. I tried to keep those (as RBMap) as much as possible, but might have missed some. Review appreciated!
2022-05-09Merge pull request #53356 from ↵Rémi Verschelde
kleonc/animation-track-editor-root-removed-connection-fix
2022-05-02Style: Partially apply clang-tidy's `cppcoreguidelines-pro-type-member-init`Rémi Verschelde
Didn't commit all the changes where it wants to initialize a struct with `{}`. Should be reviewed in a separate PR. Option `IgnoreArrays` enabled for now to be conservative, can be disabled to see if it proposes more useful changes. Also fixed manually a handful of other missing initializations / moved some from constructors.
2022-04-23Remove RESET tracks after removing trackskobewi
2022-04-08Highlight hovered keyframes in the animation track editorHugo Locurcio
Both unselected and selected keyframes feature hover feedback. This currently only affects standard keyframes (i.e. not booleans, colors or audio tracks which use custom icons).
2022-04-08Merge pull request #59396 from Calinou/animation-track-editor-improve-drawingRémi Verschelde
Improve the animation track editor drawing
2022-04-04Zero initialize all pointer class and struct membersRémi Verschelde
This prevents the pitfall of UB when checking if they have been assigned something valid by comparing to nullptr.
2022-03-21Improve the animation track editor drawingHugo Locurcio
- Draw a background on alternate lines to ease readability of animations with many tracks. - Draw a background on the currently hovered line. - Use the editor focus stylebox instead of a custom rectangle for the focused track.
2022-03-12Initialize bools in the headers in editorAaron Franke
2022-03-11Use get_cursor_shape for identifying the cursor shape in AnimationTimelineEditMarkus Sauermann
get_cursor_shape() is used in cases where a Control displays different cursors in different areas. There is no need to set the default cursor shape on every mouse move event.
2022-03-10Fix some Animation panel icons not updating after theme changeHaoyu Qiu
2022-02-12Improve compilation speed (forward declarations/includes cleanup)Hendrik Brucker
2022-02-10Fix selecting keys in Track EditFrancois Belair
2022-02-09Implement drawing and editing all anim beziersFrancois Belair
* Move bezier edit from track to button in toolbar * Draw, edit all bezier curves simultaneously * Add click on curve to select tracks * Tie track editor's filter view to bezier editor * Implement visibility and locking * Fix editor spacing issues * Fix track buttons spacing * Add keyframe focus and (de)select all key handling
2022-01-23Minor tweaks and fixes to panningkobewi
2022-01-21Add ViewPanner to 2D editorkobewi
2022-01-14Add ViewPanner to more editorskobewi
2022-01-03Update copyright statements to 2022Rémi Verschelde
Happy new year to the wonderful Godot community!
2021-12-06Allow to add RESET values from existing keyskobewi
2021-11-03reimplement ping-pongSilc 'Tokage' Renew
2021-10-23Fixed animation insertion in SkeletonEditorSilc 'Tokage' Renew
2021-10-12Remove animation 3D transform track, replace by loc/rot/scale tracks.reduz
* `Animation.TYPE_TRANSFORM3D` track is gone. * Added POSITION_3D, ROTATION_3D, SCALE_3D tracks. * GLTF2, Collada, FBX importers will only import the track types found. * Skeleton3D bone poses are now Pos/Rot/Scale, pose matrix removed. * AnimationPlayer and AnimationTree animate these tracks separately, only when found. * Removed BakeReset code, is useless with these changes. This is the first in a series of commits designed to make the animation system in Godot more useful, which includes: * Better compatibility with Autodesk products * Better reusability of animations across models (including retargeting). * Proper animation compression. * etc. *Note* GLTF2 animation saving went broken with this PR, needs to be fixed in a subsequent one.
2021-10-11Revert "Implement reverse playback and ping-pong loop in AnimationPlayer and ↵Juan Linietsky
NodeAnimation"
2021-10-09implement ping-pong loop in animationTokage
Co-authored-by: Chaosus <chaosus89@gmail.com>
2021-10-07fixed insert track queue in AnimationTrackEditor doesn't work correctlySilc 'Tokage' Renew
2021-10-07Implemented SkeletonEditorGizmoSilc Renew
Co-authored-by: Lyuma <xn.lyuma@gmail.com>
2021-10-03AnimationTrackEditor Fix signal connection on root exiting the treekleonc
2021-08-23Entirely removes BIND_VMETHOD in favor of GDVIRTUALreduz
* `_gui_input`, `_input`, `_unhandled_input` and `_unhandled_key_input` are now regular C++ virutal functions. * Everything else converted to GDVIRTUAL * BIND_VMETHOD is gone, always use the new syntax from now on. Creating `_gui_input` method and using the binder to register events will no longer work, simply override the virtual function now.
2021-06-16Documentation search fixesGregory Basile
Updates rich_text_label so that the built-in documentation can be searched Previously, it would only find the first result and would not select other results Renames "_entered" functions to "_submitted"
2021-06-15Merge pull request #48598 from Calinou/animation-track-editor-improve-scrollingRémi Verschelde
Improve scrolling actions in the animation track editor
2021-06-11Rename Reference to RefCountedPedro J. Estébanez
2021-06-03Rename Transform to Transform3D in coreAaron Franke
2021-05-23Merge pull request #40397 from KoBeWi/silent_seekerRémi Verschelde
Allow to move timeline without moving animation
2021-05-10Improve scrolling actions in the animation track editorHugo Locurcio
- Implement timeline scrobbling using Alt + Mouse wheel anywhere in the animation track editor. - Snap settings are followed, and precise snapping can be obtained by also holding down Shift. - This modifier wasn't used by anything in the animation editor. - Allow zooming by using Ctrl + Mouse wheel on the timeline itself. - Previously, this was only possible on the track area, not the timeline.
2021-03-21Allow to move timeline without moving animationTomasz Chabora
2021-03-19Make Animation's SceneTreeDialog filter nodes properlyDominik 'dreamsComeTrue' Jasiński
2021-01-01Merge pull request #44865 from RandomShaper/fix_reset_anim_crashRémi Verschelde
Fix crash related to reset animation
2021-01-01Fix crash related to reset animationPedro J. Estébanez
2021-01-01Update copyright statements to 2021Rémi Verschelde
Happy new year to the wonderful Godot community! 2020 has been a tough year for most of us personally, but a good year for Godot development nonetheless with a huge amount of work done towards Godot 4.0 and great improvements backported to the long-lived 3.2 branch. We've had close to 400 contributors to engine code this year, authoring near 7,000 commit! (And that's only for the `master` branch and for the engine code, there's a lot more when counting docs, demos and other first-party repos.) Here's to a great year 2021 for all Godot users 🎆
2020-12-20Add animation reset track featurePedro J. Estébanez
As a bonus, to have consistency between use Beziers and create insert tracks, use Beziers also gets a default via editor settings that is used when the confirmation dialog is disabled, instead of just falling back to creating non-Bezier tracks.
2020-12-09Cleanup unused engine codeTomasz Chabora
2020-12-02Initialize class/struct variables with default values in platform/ and editor/Rafał Mikrut
2020-07-10Add override keywords.Marcel Admiraal
2020-06-19Remove ToolButton in favor of ButtonHugo Locurcio
ToolButton has no redeeming differences with Button; it's just a Button with the Flat property enabled by default. Removing it avoids some confusion when creating GUIs. Existing ToolButtons will be converted to Buttons, but the Flat property won't be enabled automatically. This closes https://github.com/godotengine/godot-proposals/issues/1081.
2020-05-14Style: clang-format: Disable KeepEmptyLinesAtTheStartOfBlocksRémi Verschelde
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-04-02Replace NULL with nullptrlupoDharkael
2020-03-27Renamed 2D and 3D nodes to make their types explicitJuan Linietsky
Fixes #30736.
2020-03-26Popups have also been converted to windowsJuan Linietsky
Controls using the old modal API have been replaced to use popups.
2020-03-17Style: Set clang-format Standard to Cpp11Rémi Verschelde
For us, it practically only changes the fact that `A<A<int>>` is now used instead of the C++03 compatible `A<A<int> >`. Note: clang-format 10+ changed the `Standard` arguments to fully specified `c++11`, `c++14`, etc. versions, but we can't use `c++17` now if we want to preserve compatibility with clang-format 8 and 9. `Cpp11` is still supported as deprecated alias for `Latest`.
2020-02-23Signals: Make callbacks non-const, callable_mp can't handle itRémi Verschelde