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 "codegensettings.h"
|
||||||
|
|
||||||
#include <coreplugin/icore.h>
|
#include <coreplugin/icore.h>
|
||||||
|
#include <utils/qtcsettings.h>
|
||||||
|
|
||||||
#include <QSettings>
|
#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 char ADD_QT_VERSION_CHECK_KEY[] = "AddQtVersionCheck";
|
||||||
|
|
||||||
static const bool retranslationSupportDefault = false;
|
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 {
|
namespace QtSupport {
|
||||||
|
|
||||||
CodeGenSettings::CodeGenSettings() :
|
CodeGenSettings::CodeGenSettings()
|
||||||
embedding(PointerAggregatedUiClass),
|
: embedding(embeddingDefault)
|
||||||
retranslationSupport(retranslationSupportDefault),
|
, retranslationSupport(retranslationSupportDefault)
|
||||||
includeQtModule(false),
|
, includeQtModule(includeQtModuleDefault)
|
||||||
addQtVersionCheck(false)
|
, addQtVersionCheck(addQtVersionCheckDefault)
|
||||||
{
|
{
|
||||||
|
|
||||||
}
|
}
|
||||||
@@ -58,21 +65,32 @@ bool CodeGenSettings::equals(const CodeGenSettings &rhs) const
|
|||||||
|
|
||||||
void CodeGenSettings::fromSettings(const QSettings *settings)
|
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();
|
retranslationSupport = settings->value(group + TRANSLATION_KEY, retranslationSupportDefault)
|
||||||
embedding = static_cast<UiClassEmbedding>(settings->value(group + QLatin1String(EMBEDDING_KEY), int(PointerAggregatedUiClass)).toInt());
|
.toBool();
|
||||||
includeQtModule = settings->value(group + QLatin1String(INCLUDE_QT_MODULE_KEY), false).toBool();
|
embedding = static_cast<UiClassEmbedding>(
|
||||||
addQtVersionCheck = settings->value(group + QLatin1String(ADD_QT_VERSION_CHECK_KEY), false).toBool();
|
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
|
void CodeGenSettings::toSettings(QSettings *settings) const
|
||||||
{
|
{
|
||||||
settings->beginGroup(QLatin1String(CODE_GEN_GROUP));
|
settings->beginGroup(CODE_GEN_GROUP);
|
||||||
settings->setValue(QLatin1String(TRANSLATION_KEY), retranslationSupport);
|
QtcSettings::setValueWithDefault(settings,
|
||||||
settings->setValue(QLatin1String(EMBEDDING_KEY), embedding);
|
TRANSLATION_KEY,
|
||||||
settings->setValue(QLatin1String(INCLUDE_QT_MODULE_KEY), includeQtModule);
|
retranslationSupport,
|
||||||
settings->setValue(QLatin1String(ADD_QT_VERSION_CHECK_KEY), addQtVersionCheck);
|
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();
|
settings->endGroup();
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@@ -108,9 +108,9 @@ QString ExamplesWelcomePage::copyToAlternativeLocation(const QFileInfo& proFileI
|
|||||||
txt->setBuddy(chooser);
|
txt->setBuddy(chooser);
|
||||||
chooser->setExpectedKind(PathChooser::ExistingDirectory);
|
chooser->setExpectedKind(PathChooser::ExistingDirectory);
|
||||||
chooser->setHistoryCompleter(QLatin1String("Qt.WritableExamplesDir.History"));
|
chooser->setHistoryCompleter(QLatin1String("Qt.WritableExamplesDir.History"));
|
||||||
QSettings *settings = ICore::settings();
|
const QString defaultRootDirectory = DocumentManager::projectsDirectory().toString();
|
||||||
chooser->setPath(settings->value(QString::fromLatin1(C_FALLBACK_ROOT),
|
QtcSettings *settings = ICore::settings();
|
||||||
DocumentManager::projectsDirectory().toString()).toString());
|
chooser->setPath(settings->value(C_FALLBACK_ROOT, defaultRootDirectory).toString());
|
||||||
lay->addWidget(txt, 1, 0);
|
lay->addWidget(txt, 1, 0);
|
||||||
lay->addWidget(chooser, 1, 1);
|
lay->addWidget(chooser, 1, 1);
|
||||||
enum { Copy = QDialog::Accepted + 1, Keep = QDialog::Accepted + 2 };
|
enum { Copy = QDialog::Accepted + 1, Keep = QDialog::Accepted + 2 };
|
||||||
@@ -126,7 +126,7 @@ QString ExamplesWelcomePage::copyToAlternativeLocation(const QFileInfo& proFileI
|
|||||||
if (code == Copy) {
|
if (code == Copy) {
|
||||||
QString exampleDirName = proFileInfo.dir().dirName();
|
QString exampleDirName = proFileInfo.dir().dirName();
|
||||||
QString destBaseDir = chooser->filePath().toString();
|
QString destBaseDir = chooser->filePath().toString();
|
||||||
settings->setValue(QString::fromLatin1(C_FALLBACK_ROOT), destBaseDir);
|
settings->setValueWithDefault(C_FALLBACK_ROOT, destBaseDir, defaultRootDirectory);
|
||||||
QDir toDirWithExamplesDir(destBaseDir);
|
QDir toDirWithExamplesDir(destBaseDir);
|
||||||
if (toDirWithExamplesDir.cd(exampleDirName)) {
|
if (toDirWithExamplesDir.cd(exampleDirName)) {
|
||||||
toDirWithExamplesDir.cdUp(); // step out, just to not be in the way
|
toDirWithExamplesDir.cdUp(); // step out, just to not be in the way
|
||||||
|
@@ -662,7 +662,7 @@ void QtVersionManager::setDocumentationSetting(const QtVersionManager::Documenta
|
|||||||
{
|
{
|
||||||
if (setting == documentationSetting())
|
if (setting == documentationSetting())
|
||||||
return;
|
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
|
// force re-evaluating which documentation should be registered
|
||||||
// by claiming that all are removed and re-added
|
// by claiming that all are removed and re-added
|
||||||
const QList<BaseQtVersion *> vs = versions();
|
const QList<BaseQtVersion *> vs = versions();
|
||||||
|
Reference in New Issue
Block a user