2018-06-26 14:09:39 +02:00
|
|
|
#include "messages/Message.hpp"
|
2020-01-25 11:03:10 +01:00
|
|
|
|
2022-12-31 15:41:01 +01:00
|
|
|
#include "providers/colors/ColorProvider.hpp"
|
|
|
|
#include "providers/twitch/TwitchBadge.hpp"
|
|
|
|
#include "singletons/Settings.hpp"
|
2018-08-07 01:35:24 +02:00
|
|
|
#include "util/DebugCount.hpp"
|
2022-12-31 15:41:01 +01:00
|
|
|
#include "widgets/helper/ScrollbarHighlight.hpp"
|
2017-06-07 10:09:24 +02:00
|
|
|
|
2017-04-14 17:52:22 +02:00
|
|
|
namespace chatterino {
|
2018-06-19 22:02:51 +02:00
|
|
|
|
2018-08-07 01:35:24 +02:00
|
|
|
Message::Message()
|
|
|
|
: parseTime(QTime::currentTime())
|
2017-04-12 17:46:44 +02:00
|
|
|
{
|
2018-08-07 01:35:24 +02:00
|
|
|
DebugCount::increase("messages");
|
2017-04-12 17:46:44 +02:00
|
|
|
}
|
2017-01-07 20:43:55 +01:00
|
|
|
|
2018-08-07 01:35:24 +02:00
|
|
|
Message::~Message()
|
2017-04-12 17:46:44 +02:00
|
|
|
{
|
2018-08-07 01:35:24 +02:00
|
|
|
DebugCount::decrease("messages");
|
2017-04-12 17:46:44 +02:00
|
|
|
}
|
2017-01-07 20:43:55 +01:00
|
|
|
|
2023-11-02 15:48:12 +01:00
|
|
|
ScrollbarHighlight Message::getScrollBarHighlight() const
|
2018-01-06 03:48:56 +01:00
|
|
|
{
|
2019-07-14 16:35:32 +02:00
|
|
|
if (this->flags.has(MessageFlag::Highlighted) ||
|
|
|
|
this->flags.has(MessageFlag::HighlightedWhisper))
|
2018-10-21 13:43:02 +02:00
|
|
|
{
|
2023-11-02 15:48:12 +01:00
|
|
|
return {
|
|
|
|
this->highlightColor,
|
|
|
|
};
|
2018-10-21 13:43:02 +02:00
|
|
|
}
|
2023-11-02 15:48:12 +01:00
|
|
|
|
|
|
|
if (this->flags.has(MessageFlag::Subscription) &&
|
|
|
|
getSettings()->enableSubHighlight)
|
2018-10-21 13:43:02 +02:00
|
|
|
{
|
2023-11-02 15:48:12 +01:00
|
|
|
return {
|
|
|
|
ColorProvider::instance().color(ColorType::Subscription),
|
|
|
|
};
|
2018-01-06 03:48:56 +01:00
|
|
|
}
|
2023-11-02 15:48:12 +01:00
|
|
|
|
|
|
|
if (this->flags.has(MessageFlag::RedeemedHighlight) ||
|
|
|
|
this->flags.has(MessageFlag::RedeemedChannelPointReward))
|
2020-04-15 23:15:45 +02:00
|
|
|
{
|
2023-11-02 15:48:12 +01:00
|
|
|
return {
|
2020-04-15 23:15:45 +02:00
|
|
|
ColorProvider::instance().color(ColorType::RedeemedHighlight),
|
2023-11-02 15:48:12 +01:00
|
|
|
ScrollbarHighlight::Default,
|
|
|
|
true,
|
|
|
|
};
|
2020-04-15 23:15:45 +02:00
|
|
|
}
|
2023-11-02 15:48:12 +01:00
|
|
|
|
|
|
|
if (this->flags.has(MessageFlag::ElevatedMessage))
|
2022-10-01 01:23:31 +02:00
|
|
|
{
|
2023-11-02 15:48:12 +01:00
|
|
|
return {
|
|
|
|
ColorProvider::instance().color(
|
|
|
|
ColorType::ElevatedMessageHighlight),
|
|
|
|
ScrollbarHighlight::Default,
|
|
|
|
false,
|
|
|
|
false,
|
|
|
|
true,
|
|
|
|
};
|
2022-10-01 01:23:31 +02:00
|
|
|
}
|
2023-11-02 15:48:12 +01:00
|
|
|
|
|
|
|
if (this->flags.has(MessageFlag::FirstMessage))
|
2021-10-02 14:17:24 +02:00
|
|
|
{
|
2023-11-02 15:48:12 +01:00
|
|
|
return {
|
2021-10-02 14:17:24 +02:00
|
|
|
ColorProvider::instance().color(ColorType::FirstMessageHighlight),
|
2023-11-02 15:48:12 +01:00
|
|
|
ScrollbarHighlight::Default,
|
|
|
|
false,
|
|
|
|
true,
|
|
|
|
};
|
2021-10-02 14:17:24 +02:00
|
|
|
}
|
2022-10-01 01:23:31 +02:00
|
|
|
|
2023-11-02 15:48:12 +01:00
|
|
|
return {};
|
2018-01-06 03:48:56 +01:00
|
|
|
}
|
|
|
|
|
2017-04-14 17:52:22 +02:00
|
|
|
} // namespace chatterino
|