diff options
Diffstat (limited to 'src/libs/installer/qsettingswrapper.cpp')
-rw-r--r-- | src/libs/installer/qsettingswrapper.cpp | 110 |
1 files changed, 71 insertions, 39 deletions
diff --git a/src/libs/installer/qsettingswrapper.cpp b/src/libs/installer/qsettingswrapper.cpp index f57750bc1..d322728f5 100644 --- a/src/libs/installer/qsettingswrapper.cpp +++ b/src/libs/installer/qsettingswrapper.cpp @@ -1,6 +1,6 @@ /************************************************************************** ** -** Copyright (C) 2021 The Qt Company Ltd. +** Copyright (C) 2022 The Qt Company Ltd. ** Contact: https://www.qt.io/licensing/ ** ** This file is part of the Qt Installer Framework. @@ -107,18 +107,18 @@ QSettingsWrapper::QSettingsWrapper(QSettingsWrapper::Scope scope, const QString { } -QSettingsWrapper::QSettingsWrapper(QSettingsWrapper::Format format, QSettingsWrapper::Scope scope, +QSettingsWrapper::QSettingsWrapper(QSettings::Format format, QSettingsWrapper::Scope scope, const QString &organization, const QString &application, QObject *parent) : RemoteObject(QLatin1String(Protocol::QSettings), parent) - , d(new Private(static_cast<QSettings::Format>(format), static_cast<QSettings::Scope> (scope), + , d(new Private(format, static_cast<QSettings::Scope> (scope), organization, application)) { } -QSettingsWrapper::QSettingsWrapper(const QString &fileName, QSettingsWrapper::Format format, +QSettingsWrapper::QSettingsWrapper(const QString &fileName, QSettings::Format format, QObject *parent) : RemoteObject(QLatin1String(Protocol::QSettings), parent) - , d(new Private(fileName, static_cast<QSettings::Format>(format))) + , d(new Private(fileName, format)) { } @@ -141,27 +141,39 @@ QString QSettingsWrapper::applicationName() const return d->settings.applicationName(); } -void QSettingsWrapper::beginGroup(const QString ¶m1) +#if QT_VERSION < QT_VERSION_CHECK(6, 4, 0) + void QSettingsWrapper::beginGroup(const QString &prefix) +#else + void QSettingsWrapper::beginGroup(QAnyStringView prefix) +#endif { if (createSocket()) - callRemoteMethod(QLatin1String(Protocol::QSettingsBeginGroup), param1, dummy); + callRemoteMethodDefaultReply(QLatin1String(Protocol::QSettingsBeginGroup), prefix); else - d->settings.beginGroup(param1); + d->settings.beginGroup(prefix); } -int QSettingsWrapper::beginReadArray(const QString ¶m1) +#if QT_VERSION < QT_VERSION_CHECK(6, 4, 0) + int QSettingsWrapper::beginReadArray(const QString &prefix) +#else + int QSettingsWrapper::beginReadArray(QAnyStringView prefix) +#endif { if (createSocket()) - return callRemoteMethod<qint32>(QLatin1String(Protocol::QSettingsBeginReadArray), param1); - return d->settings.beginReadArray(param1); + return callRemoteMethod<qint32>(QLatin1String(Protocol::QSettingsBeginReadArray), prefix); + return d->settings.beginReadArray(prefix); } -void QSettingsWrapper::beginWriteArray(const QString ¶m1, int param2) +#if QT_VERSION < QT_VERSION_CHECK(6, 4, 0) + void QSettingsWrapper::beginWriteArray(const QString &prefix, int size) +#else + void QSettingsWrapper::beginWriteArray(QAnyStringView prefix, int size) +#endif { if (createSocket()) - callRemoteMethod(QLatin1String(Protocol::QSettingsBeginWriteArray), param1, qint32(param2)); + callRemoteMethodDefaultReply(QLatin1String(Protocol::QSettingsBeginWriteArray), prefix, qint32(size)); else - d->settings.beginWriteArray(param1, param2); + d->settings.beginWriteArray(prefix, size); } QStringList QSettingsWrapper::childGroups() const @@ -181,21 +193,25 @@ QStringList QSettingsWrapper::childKeys() const void QSettingsWrapper::clear() { if (createSocket()) - callRemoteMethod(QLatin1String(Protocol::QSettingsClear)); + callRemoteMethodDefaultReply(QLatin1String(Protocol::QSettingsClear)); else d->settings.clear(); } -bool QSettingsWrapper::contains(const QString ¶m1) const +#if QT_VERSION < QT_VERSION_CHECK(6, 4, 0) + bool QSettingsWrapper::contains(const QString &key) const +#else + bool QSettingsWrapper::contains(QAnyStringView key) const +#endif { if (createSocket()) - return callRemoteMethod<bool>(QLatin1String(Protocol::QSettingsContains), param1); - return d->settings.contains(param1); + return callRemoteMethod<bool>(QLatin1String(Protocol::QSettingsContains), key); + return d->settings.contains(key); } void QSettingsWrapper::endArray() { if (createSocket()) - callRemoteMethod(QLatin1String(Protocol::QSettingsEndArray)); + callRemoteMethodDefaultReply(QLatin1String(Protocol::QSettingsEndArray)); else d->settings.endArray(); } @@ -203,7 +219,7 @@ void QSettingsWrapper::endArray() void QSettingsWrapper::endGroup() { if (createSocket()) - callRemoteMethod(QLatin1String(Protocol::QSettingsEndGroup)); + callRemoteMethodDefaultReply(QLatin1String(Protocol::QSettingsEndGroup)); else d->settings.endGroup(); } @@ -222,10 +238,10 @@ QString QSettingsWrapper::fileName() const return d->settings.fileName(); } -QSettingsWrapper::Format QSettingsWrapper::format() const +QSettings::Format QSettingsWrapper::format() const { // No need to talk to the server, we've setup the local settings object the same way. - return static_cast<QSettingsWrapper::Format>(d->settings.format()); + return d->settings.format(); } QString QSettingsWrapper::group() const @@ -249,12 +265,16 @@ QString QSettingsWrapper::organizationName() const return d->settings.organizationName(); } -void QSettingsWrapper::remove(const QString ¶m1) +#if QT_VERSION < QT_VERSION_CHECK(6, 4, 0) + void QSettingsWrapper::remove(const QString &key) +#else + void QSettingsWrapper::remove(QAnyStringView key) +#endif { if (createSocket()) - callRemoteMethod(QLatin1String(Protocol::QSettingsRemove), param1, dummy); + callRemoteMethodDefaultReply(QLatin1String(Protocol::QSettingsRemove), key); else - d->settings.remove(param1); + d->settings.remove(key); } QSettingsWrapper::Scope QSettingsWrapper::scope() const @@ -266,7 +286,7 @@ QSettingsWrapper::Scope QSettingsWrapper::scope() const void QSettingsWrapper::setArrayIndex(int param1) { if (createSocket()) - callRemoteMethod(QLatin1String(Protocol::QSettingsSetArrayIndex), qint32(param1), dummy); + callRemoteMethodDefaultReply(QLatin1String(Protocol::QSettingsSetArrayIndex), qint32(param1)); else d->settings.setArrayIndex(param1); } @@ -274,17 +294,20 @@ void QSettingsWrapper::setArrayIndex(int param1) void QSettingsWrapper::setFallbacksEnabled(bool param1) { if (createSocket()) - callRemoteMethod(QLatin1String(Protocol::QSettingsSetFallbacksEnabled), param1, dummy); + callRemoteMethodDefaultReply(QLatin1String(Protocol::QSettingsSetFallbacksEnabled), param1); else d->settings.setFallbacksEnabled(param1); } - -void QSettingsWrapper::setValue(const QString ¶m1, const QVariant ¶m2) +#if QT_VERSION < QT_VERSION_CHECK(6, 4, 0) +void QSettingsWrapper::setValue(const QString &key, const QVariant &value) +#else +void QSettingsWrapper::setValue(QAnyStringView key, const QVariant &value) +#endif { if (createSocket()) - callRemoteMethod(QLatin1String(Protocol::QSettingsSetValue), param1, param2); + callRemoteMethodDefaultReply(QLatin1String(Protocol::QSettingsSetValue), key, value); else - d->settings.setValue(param1, param2); + d->settings.setValue(key, value); } QSettingsWrapper::Status QSettingsWrapper::status() const @@ -299,27 +322,36 @@ QSettingsWrapper::Status QSettingsWrapper::status() const void QSettingsWrapper::sync() { if (createSocket()) - callRemoteMethod(QLatin1String(Protocol::QSettingsSync)); + callRemoteMethodDefaultReply(QLatin1String(Protocol::QSettingsSync)); else d->settings.sync(); } -QVariant QSettingsWrapper::value(const QString ¶m1, const QVariant ¶m2) const +#if QT_VERSION < QT_VERSION_CHECK(6, 4, 0) +QVariant QSettingsWrapper::value(const QString &key, const QVariant &value) const +#else +QVariant QSettingsWrapper::value(QAnyStringView key, const QVariant &value) const +#endif +{ + if (createSocket()) + return callRemoteMethod<QVariant>(QLatin1String(Protocol::QSettingsValue), key, value); + return d->settings.value(key, value); +} + +#if QT_VERSION >= QT_VERSION_CHECK(6, 4, 0) +QVariant QSettingsWrapper::value(QAnyStringView key) const { if (createSocket()) - return callRemoteMethod<QVariant>(QLatin1String(Protocol::QSettingsValue), param1, param2); - return d->settings.value(param1, param2); + return callRemoteMethod<QVariant>(QLatin1String(Protocol::QSettingsValue), key); + return d->settings.value(key); } +#endif // -- private bool QSettingsWrapper::createSocket() const { - if ((d->m_format != QSettings::NativeFormat) && (d->m_format != QSettings::IniFormat)) { - Q_ASSERT_X(false, Q_FUNC_INFO, "Settings wrapper only supports QSettingsWrapper::NativeFormat" - " and QSettingsWrapper::IniFormat."); - } return (const_cast<QSettingsWrapper *>(this))->connectToServer(QVariantList() << d->m_application << d->m_organization << d->m_scope << d->m_format << d->m_filename); } |