X-Git-Url: https://git.quassel-irc.org/?a=blobdiff_plain;f=src%2Fclient%2Fclientsettings.h;h=aa0f0d67544e671f30753d2ed162c19be4793edb;hb=ef48d209f03f02debf369ff689002f1b32165100;hp=c927250cc52cacf7944b35c4ab6a82fbcf959368;hpb=f824db0e31b54969e0b7fa0b5405b1e9173d482c;p=quassel.git diff --git a/src/client/clientsettings.h b/src/client/clientsettings.h index c927250c..aa0f0d67 100644 --- a/src/client/clientsettings.h +++ b/src/client/clientsettings.h @@ -22,8 +22,12 @@ #define CLIENTSETTINGS_H #include "settings.h" + #include "types.h" +class QHostAddress; +class QSslSocket; + class ClientSettings : public Settings { public: virtual ~ClientSettings(); @@ -32,6 +36,10 @@ protected: ClientSettings(QString group = "General"); }; +// ======================================== +// CoreAccountSettings +// ======================================== + // Deriving from CoreAccountSettings: // MySettings() : CoreAccountSettings("MyGroup") {}; // Then use accountValue() / setAccountValue() to retrieve/store data associated to the currently @@ -67,29 +75,50 @@ private: QString _subgroup; }; +// ======================================== +// NotificationSettings +// ======================================== class NotificationSettings : public ClientSettings { +public: + enum HighlightNickType { + NoNick = 0x00, + CurrentNick= 0x01, + AllNicks = 0x02 + }; + + NotificationSettings(); - public: - enum HighlightNickType { - NoNick = 0x00, - CurrentNick= 0x01, - AllNicks = 0x02 - }; + inline void setValue(const QString &key, const QVariant &data) { setLocalValue(key, data); } + inline QVariant value(const QString &key, const QVariant &def = QVariant()) { return localValue(key, def); } + inline void remove(const QString &key) { removeLocalKey(key); } - NotificationSettings(); + void setHighlightList(const QVariantList &highlightList); + QVariantList highlightList(); - inline void setValue(const QString &key, const QVariant &data) { setLocalValue(key, data); } - inline QVariant value(const QString &key, const QVariant &def = QVariant()) { return localValue(key, def); } - inline void remove(const QString &key) { removeLocalKey(key); } + void setHighlightNick(HighlightNickType); + HighlightNickType highlightNick(); + + void setNicksCaseSensitive(bool); + bool nicksCaseSensitive(); +}; - void setHighlightList(const QVariantList &highlightList); - QVariantList highlightList(); - void setHighlightNick(HighlightNickType); - HighlightNickType highlightNick(); +// ======================================== +// KnownHostsSettings +// ======================================== +class KnownHostsSettings : public ClientSettings { +public: + KnownHostsSettings(); - void setNicksCaseSensitive(bool); - bool nicksCaseSensitive(); + QByteArray knownDigest(const QHostAddress &address); + void saveKnownHost(const QHostAddress &address, const QByteArray &certDigest); + bool isKnownHost(const QHostAddress &address, const QByteArray &certDigest); +#ifdef HAVE_SSL + QByteArray knownDigest(const QSslSocket *socket); + void saveKnownHost(const QSslSocket *socket); + bool isKnownHost(const QSslSocket *socket); +#endif }; + #endif