+
+void CoreAccountSettings::notify(const QString &key, QObject *receiver, const char *slot)
+{
+ ClientSettings::notify(QString("%1/%2/%3").arg(Client::currentCoreAccount().accountId().toInt()).arg(_subgroup).arg(key), receiver, slot);
+}
+
+
+QList<AccountId> CoreAccountSettings::knownAccounts()
+{
+ QList<AccountId> ids;
+ foreach(const QString &key, localChildGroups()) {
+ AccountId acc = key.toInt();
+ if (acc.isValid())
+ ids << acc;
+ }
+ return ids;
+}
+
+
+AccountId CoreAccountSettings::lastAccount()
+{
+ return localValue("LastAccount", 0).toInt();
+}
+
+
+void CoreAccountSettings::setLastAccount(AccountId account)
+{
+ setLocalValue("LastAccount", account.toInt());
+}
+
+
+AccountId CoreAccountSettings::autoConnectAccount()
+{
+ return localValue("AutoConnectAccount", 0).toInt();
+}
+
+
+void CoreAccountSettings::setAutoConnectAccount(AccountId account)
+{
+ setLocalValue("AutoConnectAccount", account.toInt());
+}
+
+
+bool CoreAccountSettings::autoConnectOnStartup()
+{
+ return localValue("AutoConnectOnStartup", false).toBool();
+}
+
+
+void CoreAccountSettings::setAutoConnectOnStartup(bool b)
+{
+ setLocalValue("AutoConnectOnStartup", b);
+}
+
+
+bool CoreAccountSettings::autoConnectToFixedAccount()
+{
+ return localValue("AutoConnectToFixedAccount", false).toBool();
+}
+
+
+void CoreAccountSettings::setAutoConnectToFixedAccount(bool b)
+{
+ setLocalValue("AutoConnectToFixedAccount", b);
+}
+
+
+void CoreAccountSettings::storeAccountData(AccountId id, const QVariantMap &data)
+{
+ QString base = QString::number(id.toInt());
+ foreach(const QString &key, data.keys()) {
+ setLocalValue(base + "/" + key, data.value(key));
+ }
+
+ // FIXME Migration from 0.5 -> 0.6
+ removeLocalKey(QString("%1/Connection").arg(base));