Cpp: Use new settings API

Avoid writing defaults to the settings.

Task-number: QTCREATORBUG-24430
Change-Id: I8e1d5a5b8ca21ef96a68a4d71a7d97d138bd186b
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
This commit is contained in:
Eike Ziller
2021-01-20 17:39:04 +01:00
parent 8443fbe3d4
commit 8112a00432
10 changed files with 240 additions and 153 deletions

View File

@@ -297,6 +297,13 @@ QStringList sortedAndTrimmedStringListWithoutEmptyElements(const QStringList &li
namespace CppEditor {
namespace Internal {
const bool kInsertVirtualKeywordDefault = false;
const bool kHideReimplementedFunctionsDefault = false;
const bool kInsertOVerrideReplacementDefault = false;
const int kOverrideReplacementIndexDefault = 0;
const InsertVirtualMethodsDialog::ImplementationMode kImplementationModeDefault
= InsertVirtualMethodsDialog::ModeOnlyDeclarations;
class VirtualMethodsSettings
{
public:
@@ -304,37 +311,50 @@ public:
{
QSettings *s = Core::ICore::settings();
s->beginGroup(group());
insertVirtualKeyword = s->value(insertVirtualKeywordKey(), false).toBool();
hideReimplementedFunctions = s->value(hideReimplementedFunctionsKey(), false).toBool();
insertOverrideReplacement = s->value(insertOverrideReplacementKey(), false).toBool();
overrideReplacementIndex = s->value(overrideReplacementIndexKey(), 0).toInt();
insertVirtualKeyword = s->value(insertVirtualKeywordKey(), kInsertVirtualKeywordDefault)
.toBool();
hideReimplementedFunctions
= s->value(hideReimplementedFunctionsKey(), kHideReimplementedFunctionsDefault).toBool();
insertOverrideReplacement
= s->value(insertOverrideReplacementKey(), kInsertOVerrideReplacementDefault).toBool();
overrideReplacementIndex
= s->value(overrideReplacementIndexKey(), kOverrideReplacementIndexDefault).toInt();
userAddedOverrideReplacements = s->value(userAddedOverrideReplacementsKey()).toStringList();
implementationMode = static_cast<InsertVirtualMethodsDialog::ImplementationMode>(
s->value(implementationModeKey(), 1).toInt());
s->value(implementationModeKey(), int(kImplementationModeDefault)).toInt());
s->endGroup();
}
void write() const
{
QSettings *s = Core::ICore::settings();
Utils::QtcSettings *s = Core::ICore::settings();
s->beginGroup(group());
s->setValue(insertVirtualKeywordKey(), insertVirtualKeyword);
s->setValue(hideReimplementedFunctionsKey(), hideReimplementedFunctions);
s->setValue(insertOverrideReplacementKey(), insertOverrideReplacement);
s->setValue(overrideReplacementIndexKey(), overrideReplacementIndex);
s->setValue(userAddedOverrideReplacementsKey(), userAddedOverrideReplacements);
s->setValue(implementationModeKey(), implementationMode);
s->setValueWithDefault(insertVirtualKeywordKey(),
insertVirtualKeyword,
kInsertVirtualKeywordDefault);
s->setValueWithDefault(hideReimplementedFunctionsKey(),
hideReimplementedFunctions,
kHideReimplementedFunctionsDefault);
s->setValueWithDefault(insertOverrideReplacementKey(),
insertOverrideReplacement,
kInsertOVerrideReplacementDefault);
s->setValueWithDefault(overrideReplacementIndexKey(),
overrideReplacementIndex,
kOverrideReplacementIndexDefault);
s->setValueWithDefault(userAddedOverrideReplacementsKey(), userAddedOverrideReplacements);
s->setValueWithDefault(implementationModeKey(),
int(implementationMode),
int(kImplementationModeDefault));
s->endGroup();
}
QString overrideReplacement; // internal
QStringList userAddedOverrideReplacements;
InsertVirtualMethodsDialog::ImplementationMode implementationMode =
InsertVirtualMethodsDialog::ModeOnlyDeclarations;
int overrideReplacementIndex = 0;
bool insertVirtualKeyword = false;
bool hideReimplementedFunctions = false;
bool insertOverrideReplacement = false;
InsertVirtualMethodsDialog::ImplementationMode implementationMode = kImplementationModeDefault;
int overrideReplacementIndex = kOverrideReplacementIndexDefault;
bool insertVirtualKeyword = kInsertVirtualKeywordDefault;
bool hideReimplementedFunctions = kHideReimplementedFunctionsDefault;
bool insertOverrideReplacement = kInsertOVerrideReplacementDefault;
private:
using _ = QLatin1String;