diff options
author | Aqua-sama <aqua@iserlohn-fortress.net> | 2018-07-05 19:37:05 +0200 |
---|---|---|
committer | Aqua-sama <aqua@iserlohn-fortress.net> | 2018-07-05 19:37:05 +0200 |
commit | aaed4ebc642d95dfb3cddab4fad196e870077bcf (patch) | |
tree | 1534dccf6ffd1b6ae3f4d85b13201c0d474c3f78 /lib/web/urlfilter/filterdomain.h | |
parent | Add filter.header (diff) | |
download | smolbote-aaed4ebc642d95dfb3cddab4fad196e870077bcf.tar.xz |
Add web/urlfilter
Diffstat (limited to 'lib/web/urlfilter/filterdomain.h')
-rw-r--r-- | lib/web/urlfilter/filterdomain.h | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/lib/web/urlfilter/filterdomain.h b/lib/web/urlfilter/filterdomain.h new file mode 100644 index 0000000..2173bfc --- /dev/null +++ b/lib/web/urlfilter/filterdomain.h @@ -0,0 +1,33 @@ +#ifndef FILTERDOMAIN_H +#define FILTERDOMAIN_H + +#include <QObject> +#include <QVector> + +class FilterDomain : public QObject +{ + Q_OBJECT +public: + enum MatchType { + Whitelist, // only match added domains + Blacklist, // only match domains not added + WhitelistAll, // match all domains + BlacklistAll // match no domains + }; + + explicit FilterDomain(MatchType type = Whitelist, QObject *parent = nullptr); + + void setType(MatchType type); + void addDomain(const QString &domain); + + bool hasMatch(const QString &host) const; + +private: + MatchType m_type; + QVector<QString> m_domains; +}; + +// function taken from KDE/Falkon +bool isMatchingDomain(const QString &domain, const QString &filter); + +#endif // FILTERDOMAIN_H |