/***************************************************************************
- * Copyright (C) 2005-08 by the Quassel IRC Team *
+ * Copyright (C) 2005-2018 by the Quassel Project *
* devel@quassel-irc.org *
* *
* This program is free software; you can redistribute it and/or modify *
* You should have received a copy of the GNU General Public License *
* along with this program; if not, write to the *
* Free Software Foundation, Inc., *
- * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. *
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. *
***************************************************************************/
-#ifndef _COREUSERSETTINGS_H_
-#define _COREUSERSETTINGS_H_
+#pragma once
+
+#include <QVariantMap>
#include "coresettings.h"
#include "identity.h"
+#include "network.h"
#include "types.h"
-#include <QVariantMap>
-
-class CoreUserSettings : public CoreSettings {
-
- public:
+class CoreUserSettings : public CoreSettings
+{
+public:
CoreUserSettings(UserId user);
- void storeIdentity(const Identity &identity);
- void removeIdentity(const Identity &identity);
+ Identity identity(IdentityId id) const;
+ QList<IdentityId> identityIds() const;
+ void storeIdentity(const Identity& identity);
+ void removeIdentity(IdentityId id);
- Identity identity(IdentityId id);
- QList<IdentityId> identityIds();
+ void setSessionState(const QVariant& data);
+ QVariant sessionState(const QVariant& def = {}) const;
- private:
+private:
// this stuff should only be accessed by CoreSession!
- QVariantMap sessionData();
- QVariant sessionValue(const QString &key, const QVariant &def = QVariant());
- void setSessionValue(const QString &key, const QVariant &value);
+ QVariantMap sessionData() const;
+ QVariant sessionValue(const QString& key, const QVariant& def = {}) const;
+ void setSessionValue(const QString& key, const QVariant& value);
UserId user;
friend class CoreSession;
};
-
-#endif