#pragma once #include #include #include #include "core/rectangle.h" class RectangleSFML : public kku::Rectangle { public: explicit RectangleSFML(sf::RenderTarget * const render_target); virtual void setRect(const kku::Area& rect) override; virtual kku::Area getRect() const override; virtual void setPosition(const kku::Point& position) override; virtual kku::Point getPosition() const override; virtual void move(const kku::Vector2& delta) override; virtual void setColor(const kku::Color& color) override; virtual bool contains(const kku::Point& position) const override; virtual void display() override; private: sf::RenderTarget * const _render_target; sf::RectangleShape _rectangle; };