diff options
author | dec05eba <dec05eba@protonmail.com> | 2018-04-20 01:29:54 +0200 |
---|---|---|
committer | dec05eba <dec05eba@protonmail.com> | 2018-04-20 01:31:23 +0200 |
commit | 391f7fd6d832cb40f74fb37f9e0af7ff33db202f (patch) | |
tree | 1d3e2b54dfade403da579a23029ae98f1a5c8f5b /include/MessageBoard.hpp | |
parent | c670ad2839d886107189a5a0d0854a02aa0ace53 (diff) |
Add message board, in the middle of text selection
Diffstat (limited to 'include/MessageBoard.hpp')
-rw-r--r-- | include/MessageBoard.hpp | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/include/MessageBoard.hpp b/include/MessageBoard.hpp new file mode 100644 index 0000000..f399761 --- /dev/null +++ b/include/MessageBoard.hpp @@ -0,0 +1,32 @@ +#pragma once + +#include "Message.hpp" +#include <SFML/Graphics/RenderTexture.hpp> +#include <SFML/Graphics/RenderWindow.hpp> +#include <SFML/Window/Event.hpp> +#include <stdexcept> + +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<Message*> messages; + }; +} |