mirror of
https://github.com/Chatterino/chatterino2.git
synced 2024-11-21 22:24:07 +01:00
36 lines
835 B
C++
36 lines
835 B
C++
|
#pragma once
|
||
|
|
||
|
#include "common/SignalVector.hpp"
|
||
|
#include "singletons/Settings.hpp"
|
||
|
|
||
|
namespace chatterino {
|
||
|
|
||
|
class Settings;
|
||
|
class Paths;
|
||
|
|
||
|
class NotificationModel;
|
||
|
|
||
|
class NotificationController final : public Singleton
|
||
|
{
|
||
|
public:
|
||
|
virtual void initialize(Settings &settings, Paths &paths) override;
|
||
|
|
||
|
bool isChannelNotified(const QString &channelName);
|
||
|
|
||
|
void updateChannelNotification(const QString &channelName);
|
||
|
void addChannelNotification(const QString &channelName);
|
||
|
void removeChannelNotification(const QString &channelName);
|
||
|
|
||
|
UnsortedSignalVector<QString> notificationVector;
|
||
|
|
||
|
NotificationModel *createModel(QObject *parent);
|
||
|
|
||
|
private:
|
||
|
bool initialized_ = false;
|
||
|
|
||
|
ChatterinoSetting<std::vector<QString>> notificationSetting_ = {
|
||
|
"/notifications/channels"};
|
||
|
};
|
||
|
|
||
|
} // namespace chatterino
|