Files
chatterino2/src/messages/messagebuilder.hpp
2017-09-24 18:43:24 +02:00

38 lines
725 B
C++

#pragma once
#include "messages/message.hpp"
#include <QRegularExpression>
#include <ctime>
namespace chatterino {
namespace messages {
class MessageBuilder
{
public:
MessageBuilder();
SharedMessage getMessage();
void appendWord(const Word &&word);
void appendTimestamp();
void appendTimestamp(std::time_t time);
void setHighlight(bool value);
QString matchLink(const QString &string);
QRegularExpression linkRegex;
QString originalMessage;
private:
std::shared_ptr<messages::Message> message;
std::vector<Word> _words;
bool highlight = false;
std::chrono::time_point<std::chrono::system_clock> _parseTime;
};
} // namespace messages
} // namespace chatterino