vcsbase: auto save settings when requested by Core::ICore

Bazaar and Mercurial plugins are impacted

Change-Id: Ia781dae79983350d773f454de32f812e876bfbfb
Merge-request: 350
Reviewed-by: Tobias Hunger <tobias.hunger@nokia.com>
Reviewed-on: http://codereview.qt.nokia.com/645
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
This commit is contained in:
cerf
2011-06-23 10:32:37 +02:00
committed by Tobias Hunger
parent f0c32d79ba
commit b46072c724
12 changed files with 49 additions and 29 deletions

View File

@@ -45,6 +45,7 @@ namespace Internal {
diffIgnoreWhiteSpace(false),
diffIgnoreBlankLines(false)
{
setSettingsGroup(QLatin1String("Mercurial"));
setBinary(QLatin1String(Constants::MERCURIALDEFAULT));
}
@@ -58,19 +59,19 @@ namespace Internal {
return *this;
}
void MercurialSettings::writeSettings(QSettings *settings, const QString &group) const
void MercurialSettings::writeSettings(QSettings *settings) const
{
VCSBaseClientSettings::writeSettings(settings, group);
settings->beginGroup(group);
VCSBaseClientSettings::writeSettings(settings);
settings->beginGroup(this->settingsGroup());
settings->setValue(diffIgnoreWhiteSpaceKey, diffIgnoreWhiteSpace);
settings->setValue(diffIgnoreBlankLinesKey, diffIgnoreBlankLines);
settings->endGroup();
}
void MercurialSettings::readSettings(const QSettings *settings, const QString &group)
void MercurialSettings::readSettings(const QSettings *settings)
{
VCSBaseClientSettings::readSettings(settings, group);
const QString keyRoot = group + QLatin1Char('/');
VCSBaseClientSettings::readSettings(settings);
const QString keyRoot = this->settingsGroup() + QLatin1Char('/');
diffIgnoreWhiteSpace = settings->value(keyRoot + diffIgnoreWhiteSpaceKey, false).toBool();
diffIgnoreBlankLines = settings->value(keyRoot + diffIgnoreBlankLinesKey, false).toBool();
}