summaryrefslogtreecommitdiffstats
path: root/editor/animation_bezier_editor.cpp
Commit message (Collapse)AuthorAgeFilesLines
...
* | Split theme generation logic into several subroutinesYuri Sizov2024-01-161-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This change introduces a new theme configuration struct to be passed to the aforementioned routines to better control reuse of styles and definitions in the generator. Everything not passed and not explicitly shared is scoped so it is not automatically accessible throughout the routine. This should ensure that the decision to share styles is a conscious one. In the future we will try to reduce the number of unique definitions and share most of it. This PR is a stepping stone on this path. This also puts the effort into separating redefinitions of default theme items vs custom types introduced only by the editor. In a few cases where editor-specific definitions need to reference default definitions we simply fetch them from the theme. It's not ideal and hides the dependency a bit, but hopefully these cases will be abstracted properly in due time.
* | Reorganize code related to editor themingYuri Sizov2024-01-161-1/+1
|/ | | | | | | | | | | | | This change introduces a new EditorThemeManager class to abstract theme generatio and its subroutines. Logic related to EditorTheme, EditorColorMap, and editor icons has been extracted into their respective files with includes cleaned up. All related files have been moved to a separate folder to better scope them in the project. This includes relevant generated files as well.
* Update deferred calls to use Callableskobewi2024-01-091-1/+1
|
* Merge pull request #85142 from CookieBadger/animation-player-improvementsRémi Verschelde2024-01-081-1/+2
|\ | | | | | | Improve usability of zooming in the animation editor
| * Improved usability of zoom features in animation playerCookieBadger2024-01-071-1/+2
| |
* | Fix seeking bug in AnimationPlayerEditorSilc Lizard (Tokage) Renew2023-11-221-1/+1
|/
* Add vertical scrolling to bézier track editor.Saracen2023-10-221-23/+39
|
* Add EditorStringNames singletonkobewi2023-09-031-25/+26
|
* Add gesture to ViewPanner and simplify a bit its APIGilles Roudière2023-01-231-18/+7
|
* Add EditorUndoRedoManager singletonkobewi2023-01-161-8/+8
|
* One Copyright Update to rule them allRémi Verschelde2023-01-051-29/+29
| | | | | | | | | | | | | | | | | | | | As many open source projects have started doing it, we're removing the current year from the copyright notice, so that we don't need to bump it every year. It seems like only the first year of publication is technically relevant for copyright notices, and even that seems to be something that many companies stopped listing altogether (in a version controlled codebase, the commits are a much better source of date of publication than a hardcoded copyright statement). We also now list Godot Engine contributors first as we're collectively the current maintainers of the project, and we clarify that the "exclusive" copyright of the co-founders covers the timespan before opensourcing (their further contributions are included as part of Godot Engine contributors). Also fixed "cf." Frenchism - it's meant as "refer to / see".
* Add inspector plugin for key time edit & Change find key argumentSilc Renew2022-12-221-9/+9
|
* Fix unmerged history in AnimationTrackEditorSilc Renew2022-12-101-2/+2
|
* Use forward-declarations in big editor classestrollodel2022-11-291-0/+1
|
* Cleanup remaining EditorUndoRedoManager usageskobewi2022-11-241-4/+8
|
* Code simplifications found by cppcheckMarkus Sauermann2022-11-211-3/+1
| | | | | | | They are based on: - Boolean arithmetic simplifications - setting variables that are not accessed - constant variables
* Fix the behavior of focus selection in bezier editorSilc Renew2022-11-191-4/+10
|
* Unify usage of GLOBAL/EDITOR_GETkobewi2022-10-181-2/+2
|
* Fix MSVC warnings, rename shadowed variables, fix uninitialized values, ↵bruvzg2022-10-071-7/+7
| | | | change warnings=all to use /W4.
* Port remaining connections to callable_mpTomasz Chabora2022-09-181-2/+2
|
* Fix key mapping changes when moving from macOS to other platformbruvzg2022-09-071-4/+4
| | | | | Removes separate `Command` key (use `Meta` instead). Adds an event flag to automatically remap `Command` <-> `Control` (cannot be set alongside `Control` or `Meta`).
* Rename `CanvasItem.update()` to `queue_redraw()`Micky2022-08-291-29/+29
| | | | | | | | | | Affects a lot of classes. Very thoroughly checked signal connections and deferred calls to this method, add_do_method/add_undo_method calls, and so on. Also renames the internal `_update_callback()` to `_redraw_callback()` for consistency. Just a few comments have also been changed to say "redraw". In CPUParticles2D, there was a private variable with the same name. It has been renamed to `do_redraw`.
* Revert "Remove NOTIFICATION_ENTER_TREE when paired with ↵Rémi Verschelde2022-08-291-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | NOTIFICATION_THEME_CHANGED" This reverts commit 4b817a565cab8af648c88cfc7ab6481e86ee3625. Fixes #64988. Fixes #64997. This caused several regressions (#64988, #64997, https://github.com/godotengine/godot/issues/64997#issuecomment-1229970605) which point at a flaw in the current logic: - `Control::NOTIFICATION_ENTER_TREE` triggers a *deferred* notification with `NOTIFCATION_THEME_CHANGED` as introduced in #62845. - Some classes use their `THEME_CHANGED` to cache theme items in member variables (e.g. `style_normal`, etc.), and use those member variables in `ENTER_TREE`, `READY`, `DRAW`, etc. Since the `THEME_CHANGE` notification is now deferred, they end up accessing invalid state and this can lead to not applying theme properly (e.g. for EditorHelp) or crashing (e.g. for EditorLog or CodeEdit). So we need to go back to the drawing board and see if `THEME_CHANGED` can be called earlier so that the previous logic still works? Or can we refactor all engine code to make sure that: - `ENTER_TREE` and similar do not depend on theme properties cached in member variables. - Or `THEME_CHANGE` does trigger a general UI update to make sure that any bad theme handling in `ENTER_TREE` and co. gets fixed when `THEME_CHANGE` does arrive for the first time. But that means having a temporary invalid (and possibly still crashing) state, and doing some computations twice which might be heavy (e.g. `EditorHelp::_update_doc()`).
* Remove NOTIFICATION_ENTER_TREE when paired with NOTIFICATION_THEME_CHANGEDAaron Record2022-08-271-2/+2
|
* Merge pull request #64647 from TokageItLab/auto-tangentRémi Verschelde2022-08-231-116/+174
|\
| * Add bezier preset and refactor bezier editorSilc Renew2022-08-231-116/+174
| | | | | | | | Co-authored-by: Razoric480 <razoric480@gmail.com>
* | Add per-scene UndoRedokobewi2022-08-221-1/+2
|/
* Merge pull request #63245 from V-Sekai/animation_editor_read_onlyRémi Verschelde2022-08-101-156/+181
|\
| * Add read-only mode to AnimationEditor for foreign resources.SaracenOne2022-07-211-156/+181
| |
* | Remove Signal connect bindsJuan Linietsky2022-07-291-3/+3
|/ | | | | Remove the optional argument p_binds from `Object::connect` since it was deprecated by Callable.bind(). Changed all uses of it to Callable.bind()
* Rename Control PRESET_WIDE to PRESET_FULL_RECTFireForge2022-07-181-1/+1
|
* Refactor bezier interpolation functionsHendrik Brucker2022-06-271-14/+3
|
* Add a new HashSet templatereduz2022-05-201-10/+10
| | | | | * Intended to replace RBSet in most cases. * Optimized for iteration speed
* Use range iterators for RBSet in most casesAaron Record2022-05-191-4/+4
|
* Replace most uses of Map by HashMapreduz2022-05-161-9/+9
| | | | | | | | | | | | * 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!
* Rename theme properties to include underscoresFireForge2022-04-231-4/+4
| | | | | | | | | | | | | | - check_vadjust -> check_v_adjust - close_h_ofs -> close_h_offset - close_v_ofs -> close_v_offset - commentfocus -> comment_focus - hseparation -> h_separation - ofs -> offset - selectedframe -> selected_frame - state_machine_selectedframe -> state_machine_selected_frame - table_hseparation -> table_h_separation - table_vseparation -> table_v_separation - vseparation -> v_separation
* Fix some issues found by cppcheck.bruvzg2022-04-061-2/+1
|
* Remove set_as_minsize()kobewi2022-03-061-1/+1
|
* Merge pull request #58182 from akien-mga/style-cleanup-if-semicolons-deadcodeRémi Verschelde2022-02-161-8/+0
|\
| * Style: Cleanup single-line blocks, semicolons, dead codeRémi Verschelde2022-02-161-8/+0
| | | | | | | | | | Remove currently unused implementation of TextureBasisU, could be re-added later on if needed and ported.
* | Port existing _notification code to use switch statements (part 1/3)jmb4622022-02-161-311/+319
|/
* Improve compilation speed (forward declarations/includes cleanup)Hendrik Brucker2022-02-121-1/+1
|
* Implement drawing and editing all anim beziersFrancois Belair2022-02-091-260/+696
| | | | | | | | | | | * 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
* Minor tweaks and fixes to panningkobewi2022-01-231-2/+2
|
* Add ViewPanner to 2D editorkobewi2022-01-211-28/+14
|
* Add ViewPanner to more editorskobewi2022-01-141-42/+46
|
* Update copyright statements to 2022Rémi Verschelde2022-01-031-2/+2
| | | | Happy new year to the wonderful Godot community!
* align to horizontal_alignment, valign to vertical_alignment, relatedNathan Franke2021-12-091-3/+3
|
* Fix bad popups offset in editor with single window offjmb4622021-12-061-1/+1
| | | | | Co-authored-by: Gil Arasa Verge <gilarasaverge@gmail.com> Co-authored-by: Tomasz Chabora <kobewi4e@gmail.com>
* Make bezier handle type a property of keyframes, update interfaceNathan Lovato2021-11-161-38/+64
| | | | | | | - Replaced unused code related to old close icon with a button - Add bezier handle options to right-click menu - Remove mirror handle mode, only keep balanced - Update animation reference