#pragma once #include "Message.hpp" #include #include #include #include namespace dchat { class MessageBoard { public: MessageBoard(const sf::Vector2u &size); ~MessageBoard(); void updateStaticContentTexture(const sf::Vector2u &newSize); void addMessage(Message *message); void processEvent(const sf::Event &event); void draw(sf::RenderWindow &window); private: sf::RenderTexture staticContentTexture; bool useStaticContentTexture; bool dirty; bool selectingText; bool leftMouseButtonPressed; sf::Vector2f mousePos; sf::Vector2f selectingTextStart; std::vector messages; }; }