diff options
Diffstat (limited to 'src/libs/installer/qsettingswrapper.h')
-rw-r--r-- | src/libs/installer/qsettingswrapper.h | 54 |
1 files changed, 35 insertions, 19 deletions
diff --git a/src/libs/installer/qsettingswrapper.h b/src/libs/installer/qsettingswrapper.h index c9e6d6265..f5d428b1e 100644 --- a/src/libs/installer/qsettingswrapper.h +++ b/src/libs/installer/qsettingswrapper.h @@ -1,6 +1,6 @@ /************************************************************************** ** -** Copyright (C) 2017 The Qt Company Ltd. +** Copyright (C) 2023 The Qt Company Ltd. ** Contact: https://www.qt.io/licensing/ ** ** This file is part of the Qt Installer Framework. @@ -34,6 +34,10 @@ #include <QVariant> +#include <QSettings> + +QT_FORWARD_DECLARE_CLASS(QTextCodec) + namespace QInstaller { class INSTALLER_EXPORT QSettingsWrapper : public RemoteObject @@ -48,12 +52,6 @@ public: FormatError }; - enum Format { - NativeFormat, - IniFormat, - InvalidFormat = 16 - }; - enum Scope { UserScope, SystemScope @@ -63,21 +61,30 @@ public: const QString &application = QString(), QObject *parent = 0); QSettingsWrapper(Scope scope, const QString &organization, const QString &application = QString(), QObject *parent = 0); - QSettingsWrapper(Format format, Scope scope, const QString &organization, + QSettingsWrapper(QSettings::Format format, Scope scope, const QString &organization, const QString &application = QString(), QObject *parent = 0); - QSettingsWrapper(const QString &fileName, Format format, QObject *parent = 0); + QSettingsWrapper(const QString &fileName, QSettings::Format format, QObject *parent = 0); ~QSettingsWrapper(); void clear(); void sync(); Status status() const; +#if QT_VERSION < QT_VERSION_CHECK(6, 4, 0) void beginGroup(const QString &prefix); +#else + void beginGroup(QAnyStringView prefix); +#endif void endGroup(); QString group() const; +#if QT_VERSION < QT_VERSION_CHECK(6, 4, 0) int beginReadArray(const QString &prefix); void beginWriteArray(const QString &prefix, int size = -1); +#else + int beginReadArray(QAnyStringView prefix); + void beginWriteArray(QAnyStringView prefix, int size = -1); +#endif void endArray(); void setArrayIndex(int i); @@ -86,17 +93,27 @@ public: QStringList childGroups() const; bool isWritable() const; +#if QT_VERSION < QT_VERSION_CHECK(6, 4, 0) void setValue(const QString &key, const QVariant &value); QVariant value(const QString &key, const QVariant &defaultValue = QVariant()) const; +#else + void setValue(QAnyStringView key, const QVariant &value); + QVariant value(QAnyStringView key, const QVariant &defaultValue) const; + QVariant value(QAnyStringView key) const; +#endif +#if QT_VERSION < QT_VERSION_CHECK(6, 4, 0) void remove(const QString &key); bool contains(const QString &key) const; - +#else + void remove(QAnyStringView key); + bool contains(QAnyStringView key) const; +#endif void setFallbacksEnabled(bool b); bool fallbacksEnabled() const; QString fileName() const; - Format format() const; + QSettings::Format format() const; Scope scope() const; QString organizationName() const; QString applicationName() const; @@ -109,28 +126,27 @@ private: // we cannot support the following functionality : RemoteObject(QLatin1String(Protocol::QSettings), parent) {} +#if QT_VERSION < QT_VERSION_CHECK(6, 4, 0) void setIniCodec(QTextCodec * /*codec*/); void setIniCodec(const char * /*codecName*/); QTextCodec *iniCodec() const { return 0; } - - static void setDefaultFormat(Format /*format*/); - static Format defaultFormat() { return NativeFormat; } - static void setSystemIniPath(const QString & /*dir*/); - static void setUserIniPath(const QString & /*dir*/); - static void setPath(Format /*format*/, Scope /*scope*/, const QString & /*path*/); +#endif + static void setDefaultFormat(QSettings::Format /*format*/); + static QSettings::Format defaultFormat() { return QSettings::NativeFormat; } + static void setPath(QSettings::Format /*format*/, Scope /*scope*/, const QString & /*path*/); typedef QMap<QString, QVariant> SettingsMap; typedef bool(*ReadFunc)(QIODevice &device, SettingsMap &map); typedef bool(*WriteFunc)(QIODevice &device, const SettingsMap &map); - static Format registerFormat(const QString &extension, ReadFunc readFunc, WriteFunc writeFunc, + static QSettings::Format registerFormat(const QString &extension, ReadFunc readFunc, WriteFunc writeFunc, Qt::CaseSensitivity caseSensitivity = Qt::CaseSensitive) { Q_UNUSED(extension) Q_UNUSED(readFunc) Q_UNUSED(writeFunc) Q_UNUSED(caseSensitivity) - return NativeFormat; + return QSettings::NativeFormat; } private: |