X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fclient%2Fclientsettings.h;h=3b03c4c9bf8af3a027e77a870b548b3b40b5f952;hp=1c86dac201fe65e017da78c1831025f2457d5b61;hb=61f42c7c9d0e5428512287f97ded31448741f2da;hpb=8699dd758516d0ded076811e8ea656adc95e69d0 diff --git a/src/client/clientsettings.h b/src/client/clientsettings.h index 1c86dac2..3b03c4c9 100644 --- a/src/client/clientsettings.h +++ b/src/client/clientsettings.h @@ -31,18 +31,14 @@ class ClientSettings : public Settings { protected: ClientSettings(QString group = "General"); - //virtual QStringList allSessionKeys() = 0; - virtual QStringList sessionKeys(); - - virtual void setSessionValue(const QString &key, const QVariant &data); - virtual QVariant sessionValue(const QString &key, const QVariant &def = QVariant()); - }; -class AccountSettings : public ClientSettings { +// TODO accountid, account-specific settings + +class CoreAccountSettings : public ClientSettings { public: - AccountSettings(); + CoreAccountSettings(); QStringList knownAccounts(); QString lastAccount(); @@ -50,8 +46,10 @@ class AccountSettings : public ClientSettings { QString autoConnectAccount(); void setAutoConnectAccount(const QString &account); - void setValue(const QString &account, const QString &key, const QVariant &data); - QVariant value(const QString &account, const QString &key, const QVariant &def = QVariant()); + void storeAccount(const QString name, const QVariantMap &data); + QVariantMap retrieveAccount(const QString &name); + void storeAllAccounts(const QHash accounts); + QHash retrieveAllAccounts(); void removeAccount(const QString &account); };