16 lines
413 B
C
16 lines
413 B
C
|
#pragma once
|
||
|
|
||
|
#include <stack>
|
||
|
#include <memory>
|
||
|
#include <SFML/Window/Event.hpp>
|
||
|
#include <SFML/Graphics/Drawable.hpp>
|
||
|
|
||
|
class GUIState : public sf::Drawable
|
||
|
{
|
||
|
virtual ~GUIState() = default;
|
||
|
|
||
|
virtual void input(const sf::Event& event, std::stack<std::shared_ptr<GUIState>>& states) = 0;
|
||
|
virtual void update() = 0;
|
||
|
virtual void draw(sf::RenderTarget& target, sf::RenderStates states) const = 0;
|
||
|
};
|