diff options
Diffstat (limited to 'src/engine/graphics')
-rw-r--r-- | src/engine/graphics/scene.cpp | 8 | ||||
-rw-r--r-- | src/engine/graphics/scene.hpp | 11 |
2 files changed, 7 insertions, 12 deletions
diff --git a/src/engine/graphics/scene.cpp b/src/engine/graphics/scene.cpp index e0f4da6..e4bdb6e 100644 --- a/src/engine/graphics/scene.cpp +++ b/src/engine/graphics/scene.cpp @@ -9,12 +9,8 @@ #include <iostream> #include <sys/ioctl.h> -Scene::Scene( - IMatrixFactory<MatrixElement> matrix_factory, - std::shared_ptr<ICursorController> cursor_controller) noexcept - : _matrix(matrix_factory(size())), - _cursor_controller(std::move(cursor_controller)), - _is_shown(false) +Scene::Scene(const IMatrixFactory<MatrixElement> &matrix_factory) noexcept + : _matrix(matrix_factory(size())), _is_shown(false) { _matrix->fill(' '); } diff --git a/src/engine/graphics/scene.hpp b/src/engine/graphics/scene.hpp index c2b11e8..4df5f56 100644 --- a/src/engine/graphics/scene.hpp +++ b/src/engine/graphics/scene.hpp @@ -1,13 +1,13 @@ #pragma once #include "interfaces/component.hpp" -#include "interfaces/cursor.hpp" #include "interfaces/matrix.hpp" #include "interfaces/scene.hpp" #include "engine/data/vector2.hpp" #include <fmt/core.h> +#include <yacppdic/auto_wirable.hpp> #include <memory> #include <string_view> @@ -18,12 +18,12 @@ constexpr fmt::string_view ENABLE_ALT_BUFFER = "{esc}[?1049h"; constexpr fmt::string_view DISABLE_ALT_BUFFER = "{esc}[?1049l"; -class Scene : public IScene +class Scene + : public IScene, + public yacppdic::AutoWirable<IScene, Scene, IMatrixFactory<IScene::MatrixElement>> { public: - explicit Scene( - IMatrixFactory<MatrixElement> matrix_factory, - std::shared_ptr<ICursorController> cursor_controller) noexcept; + explicit Scene(const IMatrixFactory<MatrixElement> &matrix_factory) noexcept; void enter() noexcept override; @@ -43,7 +43,6 @@ public: private: std::shared_ptr<IMatrix<MatrixElement>> _matrix; - std::shared_ptr<ICursorController> _cursor_controller; bool _is_shown; std::shared_ptr<termios> _original_termios = nullptr; |