summaryrefslogtreecommitdiff
path: root/src/managers/AnimationManager.hpp
diff options
context:
space:
mode:
authorGartoxFR <ewan.chorynski@insa-lyon.fr>2024-03-02 01:35:17 +0100
committerGitHub <noreply@github.com>2024-03-02 00:35:17 +0000
commitb2c34404777ea0850f90f4c38f64484f03599d14 (patch)
tree60f42773d2d606ae2072884cb537c751a7ab4b0f /src/managers/AnimationManager.hpp
parentf115ba94d2ec6e093c94f425535b027bc570185e (diff)
animations: Refactor AnimatedVariable (#4911)
* animation: Refactor AnimatedVariable This commit decomposes the AnimatedVariable class into a base class with the common attribute to all variable types and a templated derived type containing strongly typed info on the type being animated. Access to the typed version is perfomed using the visitor pattern. A utility is provided to build a visitor on the fly using lambdas. Adding a new type to be animated should just be a matter of adding the typed in the list defined by the ANIMABLE_TYPES macro The size of the commit is justified by the API change in the AnimatedVariable class. No more vec(), fl() or col() method but a unified value() method. * animation: Remove visitor pattern * animation: Fix coding style * animation: Fix coding style
Diffstat (limited to 'src/managers/AnimationManager.hpp')
-rw-r--r--src/managers/AnimationManager.hpp6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/managers/AnimationManager.hpp b/src/managers/AnimationManager.hpp
index 281c61f8..ae82a60b 100644
--- a/src/managers/AnimationManager.hpp
+++ b/src/managers/AnimationManager.hpp
@@ -28,8 +28,8 @@ class CAnimationManager {
std::unordered_map<std::string, CBezierCurve> getAllBeziers();
- std::vector<CAnimatedVariable*> m_vAnimatedVariables;
- std::vector<CAnimatedVariable*> m_vActiveAnimatedVariables;
+ std::vector<CBaseAnimatedVariable*> m_vAnimatedVariables;
+ std::vector<CBaseAnimatedVariable*> m_vActiveAnimatedVariables;
wl_event_source* m_pAnimationTick;
@@ -52,4 +52,4 @@ class CAnimationManager {
void animationSlide(CWindow*, std::string force = "", bool close = false);
};
-inline std::unique_ptr<CAnimationManager> g_pAnimationManager; \ No newline at end of file
+inline std::unique_ptr<CAnimationManager> g_pAnimationManager;