X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fclient%2Fclientsettings.h;h=8d8739836a95949cb0ac27ca2c6f1635cde0765b;hp=aa0f0d67544e671f30753d2ed162c19be4793edb;hb=79ae829bc853477bbd4869f9335912b1daf32953;hpb=e06ce3bfa98752cb9e87586477dfaf31e7e1ab0a diff --git a/src/client/clientsettings.h b/src/client/clientsettings.h index aa0f0d67..8d873983 100644 --- a/src/client/clientsettings.h +++ b/src/client/clientsettings.h @@ -59,6 +59,12 @@ public: void setLastAccount(AccountId); AccountId autoConnectAccount(); void setAutoConnectAccount(AccountId); + bool autoConnectOnStartup(); + void setAutoConnectOnStartup(bool); + bool autoConnectToFixedAccount(); + void setAutoConnectToFixedAccount(bool); + + void clearAccounts(); void storeAccountData(AccountId id, const QVariantMap &data); QVariantMap retrieveAccountData(AccountId); @@ -67,7 +73,9 @@ public: void setJumpKeyMap(const QHash &keyMap); QHash jumpKeyMap(); -protected: + void setBufferViewOverlay(const QSet &viewIds); + QSet bufferViewOverlay(); + void setAccountValue(const QString &key, const QVariant &data); QVariant accountValue(const QString &key, const QVariant &def = QVariant()); @@ -102,23 +110,72 @@ public: bool nicksCaseSensitive(); }; +// ======================================== +// CoreConnectionSettings +// ======================================== + +class CoreConnectionSettings : public ClientSettings { +public: + enum NetworkDetectionMode { + UseSolid, + UsePingTimeout, + NoActiveDetection + }; + + CoreConnectionSettings(); + + void setNetworkDetectionMode(NetworkDetectionMode mode); + NetworkDetectionMode networkDetectionMode(); + + void setAutoReconnect(bool autoReconnect); + bool autoReconnect(); + + void setPingTimeoutInterval(int interval); + int pingTimeoutInterval(); + + void setReconnectInterval(int interval); + int reconnectInterval(); +}; // ======================================== -// KnownHostsSettings +// TabCompletionSettings // ======================================== -class KnownHostsSettings : public ClientSettings { + +class TabCompletionSettings : public ClientSettings { public: - KnownHostsSettings(); + enum SortMode { + Alphabetical, + LastActivity + }; - QByteArray knownDigest(const QHostAddress &address); - void saveKnownHost(const QHostAddress &address, const QByteArray &certDigest); - bool isKnownHost(const QHostAddress &address, const QByteArray &certDigest); + TabCompletionSettings(); -#ifdef HAVE_SSL - QByteArray knownDigest(const QSslSocket *socket); - void saveKnownHost(const QSslSocket *socket); - bool isKnownHost(const QSslSocket *socket); -#endif + void setCompletionSuffix(const QString &); + QString completionSuffix(); + + void setAddSpaceMidSentence(bool); + bool addSpaceMidSentence(); + + void setSortMode(SortMode); + SortMode sortMode(); + + void setCaseSensitivity(Qt::CaseSensitivity); + Qt::CaseSensitivity caseSensitivity(); + + void setUseLastSpokenTo(bool); + bool useLastSpokenTo(); + +}; + +// ======================================== +// ItemViewSettings +// ======================================== +class ItemViewSettings : public ClientSettings { + public: + ItemViewSettings(const QString& group = "ItemViews"); + + bool displayTopicInTooltip(); + bool mouseWheelChangesBuffer(); }; #endif