2022-08-19 15:59:36 +02:00
|
|
|
// Copyright (C) 2020 The Qt Company Ltd.
|
2022-12-21 10:12:09 +01:00
|
|
|
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
|
2020-11-19 15:34:59 +01:00
|
|
|
|
|
|
|
|
#include "qtcsettings.h"
|
2023-09-05 15:25:26 +02:00
|
|
|
#include "store.h"
|
2020-11-19 15:34:59 +01:00
|
|
|
|
|
|
|
|
namespace Utils {
|
|
|
|
|
|
|
|
|
|
/*!
|
|
|
|
|
\class Utils::QtcSettings
|
|
|
|
|
\inheaderfile utils/qtcsettings.h
|
|
|
|
|
\inmodule QtCreator
|
|
|
|
|
|
|
|
|
|
\brief The QtcSettings class is an extension of the QSettings class.
|
|
|
|
|
|
|
|
|
|
Use Utils::QtcSettings::setValueWithDefault() to write values with a
|
|
|
|
|
default.
|
|
|
|
|
*/
|
|
|
|
|
|
|
|
|
|
/*!
|
|
|
|
|
\fn template<typename T> void setValueWithDefault(const QString &key, const T &val, const T &defaultValue)
|
|
|
|
|
|
|
|
|
|
Sets the value of setting \a key to \a val. If \a val is the same as the \a
|
|
|
|
|
defaultValue, the settings key is removed instead. This makes sure that
|
|
|
|
|
settings are only written if actually necessary, namely when the user
|
|
|
|
|
changed them from the default. It also makes a new default value for a
|
|
|
|
|
setting in a new version of the application take effect, if the user did
|
|
|
|
|
not change the setting before.
|
|
|
|
|
|
|
|
|
|
\sa QSettings::setValue()
|
|
|
|
|
*/
|
|
|
|
|
|
2023-09-05 15:25:26 +02:00
|
|
|
QVariant QtcSettings::value(const Key &key, const QVariant &def) const
|
|
|
|
|
{
|
|
|
|
|
return QSettings::value(stringFromKey(key), def);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void QtcSettings::setValue(const Key &key, const QVariant &value)
|
|
|
|
|
{
|
|
|
|
|
QSettings::setValue(stringFromKey(key), mapEntryFromStoreEntry(value));
|
|
|
|
|
}
|
|
|
|
|
|
2020-11-19 15:34:59 +01:00
|
|
|
} // namespace Utils
|