mirror-chatterino2/src/controllers/ignores/IgnoreController.hpp

34 lines
711 B
C++
Raw Normal View History

2018-05-13 19:24:32 +02:00
#pragma once
#include "common/ChatterinoSetting.hpp"
#include "common/SignalVector.hpp"
#include "common/Singleton.hpp"
2018-06-26 14:09:39 +02:00
#include "controllers/ignores/IgnorePhrase.hpp"
2018-05-13 19:24:32 +02:00
namespace chatterino {
2018-08-02 14:23:27 +02:00
class Settings;
class Paths;
2018-05-13 19:24:32 +02:00
class IgnoreModel;
2019-04-12 22:12:39 +02:00
enum ShowIgnoredUsersMessages { Never, IfModerator, IfBroadcaster };
2018-08-02 14:23:27 +02:00
class IgnoreController final : public Singleton
2018-05-13 19:24:32 +02:00
{
public:
2018-08-02 14:23:27 +02:00
virtual void initialize(Settings &settings, Paths &paths) override;
2018-05-13 19:24:32 +02:00
2018-06-26 17:06:17 +02:00
UnsortedSignalVector<IgnorePhrase> phrases;
2018-05-13 19:24:32 +02:00
IgnoreModel *createModel(QObject *parent);
private:
2018-07-06 19:23:47 +02:00
bool initialized_ = false;
2018-05-13 19:24:32 +02:00
2018-08-06 21:17:03 +02:00
ChatterinoSetting<std::vector<IgnorePhrase>> ignoresSetting_ = {
"/ignore/phrases"};
2018-05-13 19:24:32 +02:00
};
} // namespace chatterino