forked from qt-creator/qt-creator
QtSupport: Use new settings API
Avoid writing defaults to the settings. Task-number: QTCREATORBUG-24430 Change-Id: Ic068ade0d34a66e1baf067d90d63e01b0d0e73c0 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
This commit is contained in:
@@ -26,6 +26,7 @@
|
||||
#include "codegensettings.h"
|
||||
|
||||
#include <coreplugin/icore.h>
|
||||
#include <utils/qtcsettings.h>
|
||||
|
||||
#include <QSettings>
|
||||
|
||||
@@ -36,14 +37,20 @@ static const char INCLUDE_QT_MODULE_KEY[] = "IncludeQtModule";
|
||||
static const char ADD_QT_VERSION_CHECK_KEY[] = "AddQtVersionCheck";
|
||||
|
||||
static const bool retranslationSupportDefault = false;
|
||||
static const QtSupport::CodeGenSettings::UiClassEmbedding embeddingDefault
|
||||
= QtSupport::CodeGenSettings::PointerAggregatedUiClass;
|
||||
static const bool includeQtModuleDefault = false;
|
||||
static const bool addQtVersionCheckDefault = false;
|
||||
|
||||
using namespace Utils;
|
||||
|
||||
namespace QtSupport {
|
||||
|
||||
CodeGenSettings::CodeGenSettings() :
|
||||
embedding(PointerAggregatedUiClass),
|
||||
retranslationSupport(retranslationSupportDefault),
|
||||
includeQtModule(false),
|
||||
addQtVersionCheck(false)
|
||||
CodeGenSettings::CodeGenSettings()
|
||||
: embedding(embeddingDefault)
|
||||
, retranslationSupport(retranslationSupportDefault)
|
||||
, includeQtModule(includeQtModuleDefault)
|
||||
, addQtVersionCheck(addQtVersionCheckDefault)
|
||||
{
|
||||
|
||||
}
|
||||
@@ -58,21 +65,32 @@ bool CodeGenSettings::equals(const CodeGenSettings &rhs) const
|
||||
|
||||
void CodeGenSettings::fromSettings(const QSettings *settings)
|
||||
{
|
||||
QString group = QLatin1String(CODE_GEN_GROUP) + QLatin1Char('/');
|
||||
QString group = QLatin1String(CODE_GEN_GROUP) + '/';
|
||||
|
||||
retranslationSupport = settings->value(group + QLatin1String(TRANSLATION_KEY), retranslationSupportDefault).toBool();
|
||||
embedding = static_cast<UiClassEmbedding>(settings->value(group + QLatin1String(EMBEDDING_KEY), int(PointerAggregatedUiClass)).toInt());
|
||||
includeQtModule = settings->value(group + QLatin1String(INCLUDE_QT_MODULE_KEY), false).toBool();
|
||||
addQtVersionCheck = settings->value(group + QLatin1String(ADD_QT_VERSION_CHECK_KEY), false).toBool();
|
||||
retranslationSupport = settings->value(group + TRANSLATION_KEY, retranslationSupportDefault)
|
||||
.toBool();
|
||||
embedding = static_cast<UiClassEmbedding>(
|
||||
settings->value(group + EMBEDDING_KEY, int(embeddingDefault)).toInt());
|
||||
includeQtModule = settings->value(group + INCLUDE_QT_MODULE_KEY, includeQtModuleDefault).toBool();
|
||||
addQtVersionCheck = settings->value(group + ADD_QT_VERSION_CHECK_KEY, addQtVersionCheckDefault).toBool();
|
||||
}
|
||||
|
||||
void CodeGenSettings::toSettings(QSettings *settings) const
|
||||
{
|
||||
settings->beginGroup(QLatin1String(CODE_GEN_GROUP));
|
||||
settings->setValue(QLatin1String(TRANSLATION_KEY), retranslationSupport);
|
||||
settings->setValue(QLatin1String(EMBEDDING_KEY), embedding);
|
||||
settings->setValue(QLatin1String(INCLUDE_QT_MODULE_KEY), includeQtModule);
|
||||
settings->setValue(QLatin1String(ADD_QT_VERSION_CHECK_KEY), addQtVersionCheck);
|
||||
settings->beginGroup(CODE_GEN_GROUP);
|
||||
QtcSettings::setValueWithDefault(settings,
|
||||
TRANSLATION_KEY,
|
||||
retranslationSupport,
|
||||
retranslationSupportDefault);
|
||||
QtcSettings::setValueWithDefault(settings, EMBEDDING_KEY, int(embedding), int(embeddingDefault));
|
||||
QtcSettings::setValueWithDefault(settings,
|
||||
INCLUDE_QT_MODULE_KEY,
|
||||
includeQtModule,
|
||||
includeQtModuleDefault);
|
||||
QtcSettings::setValueWithDefault(settings,
|
||||
ADD_QT_VERSION_CHECK_KEY,
|
||||
addQtVersionCheck,
|
||||
addQtVersionCheckDefault);
|
||||
settings->endGroup();
|
||||
|
||||
}
|
||||
|
@@ -108,9 +108,9 @@ QString ExamplesWelcomePage::copyToAlternativeLocation(const QFileInfo& proFileI
|
||||
txt->setBuddy(chooser);
|
||||
chooser->setExpectedKind(PathChooser::ExistingDirectory);
|
||||
chooser->setHistoryCompleter(QLatin1String("Qt.WritableExamplesDir.History"));
|
||||
QSettings *settings = ICore::settings();
|
||||
chooser->setPath(settings->value(QString::fromLatin1(C_FALLBACK_ROOT),
|
||||
DocumentManager::projectsDirectory().toString()).toString());
|
||||
const QString defaultRootDirectory = DocumentManager::projectsDirectory().toString();
|
||||
QtcSettings *settings = ICore::settings();
|
||||
chooser->setPath(settings->value(C_FALLBACK_ROOT, defaultRootDirectory).toString());
|
||||
lay->addWidget(txt, 1, 0);
|
||||
lay->addWidget(chooser, 1, 1);
|
||||
enum { Copy = QDialog::Accepted + 1, Keep = QDialog::Accepted + 2 };
|
||||
@@ -126,7 +126,7 @@ QString ExamplesWelcomePage::copyToAlternativeLocation(const QFileInfo& proFileI
|
||||
if (code == Copy) {
|
||||
QString exampleDirName = proFileInfo.dir().dirName();
|
||||
QString destBaseDir = chooser->filePath().toString();
|
||||
settings->setValue(QString::fromLatin1(C_FALLBACK_ROOT), destBaseDir);
|
||||
settings->setValueWithDefault(C_FALLBACK_ROOT, destBaseDir, defaultRootDirectory);
|
||||
QDir toDirWithExamplesDir(destBaseDir);
|
||||
if (toDirWithExamplesDir.cd(exampleDirName)) {
|
||||
toDirWithExamplesDir.cdUp(); // step out, just to not be in the way
|
||||
|
@@ -662,7 +662,7 @@ void QtVersionManager::setDocumentationSetting(const QtVersionManager::Documenta
|
||||
{
|
||||
if (setting == documentationSetting())
|
||||
return;
|
||||
Core::ICore::settings()->setValue(DOCUMENTATION_SETTING_KEY, int(setting));
|
||||
Core::ICore::settings()->setValueWithDefault(DOCUMENTATION_SETTING_KEY, int(setting), 0);
|
||||
// force re-evaluating which documentation should be registered
|
||||
// by claiming that all are removed and re-added
|
||||
const QList<BaseQtVersion *> vs = versions();
|
||||
|
Reference in New Issue
Block a user