* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. *
***************************************************************************/
-#ifndef SETTINGS_H
-#define SETTINGS_H
+#pragma once
+
+#include "common-export.h"
#include <QCoreApplication>
#include <QHash>
#include <QSettings>
#include <QString>
#include <QVariant>
+#include <utility>
#include "quassel.h"
-class SettingsChangeNotifier : public QObject
+class COMMON_EXPORT SettingsChangeNotifier : public QObject
{
Q_OBJECT
};
-class Settings
+class COMMON_EXPORT Settings
{
public:
enum Mode { Default, Custom };
bool isWritable();
protected:
- inline Settings(QString group_, QString appName_) : group(group_), appName(appName_) {}
- inline virtual ~Settings() {}
+ inline Settings(QString group_, QString appName_) : group(std::move(group_)), appName(std::move(appName_)) {}
+ inline virtual ~Settings() = default;
inline void setGroup(const QString &group_) { group = group_; }
virtual QStringList localChildGroups(const QString &rootkey = QString());
virtual void setLocalValue(const QString &key, const QVariant &data);
- virtual const QVariant &localValue(const QString &key, const QVariant &def = QVariant());
+ virtual QVariant localValue(const QString &key, const QVariant &def = QVariant());
/**
* Gets if a key exists in settings
return settingsChangeNotifier.contains(normKey);
}
};
-
-
-#endif