forked from qt-creator/qt-creator
vcsbase: add mechanism to ease management of VCS settings
Management of VCS settings was rather laborious (see BazaarSettings, GitSettings, ...). To overcome this, the base class VCSBaseClientSettings is now equipped with a mechanism factorizing redundant code for VCS settings, like operator=(), operator==(), writeSettings(), ... Heir classes of VCSBaseClientSettings only need to declare the settings (key + default value). Bazaar and Mercurial plugins are impacted. Change-Id: I7e4093a6d9476f3c8954f4d104f1b26ac185beb9 Merge-request: 2204 Reviewed-by: Tobias Hunger <tobias.hunger@nokia.com> Reviewed-on: http://codereview.qt-project.org/4889 Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
This commit is contained in:
@@ -53,24 +53,24 @@ OptionsPageWidget::OptionsPageWidget(QWidget *parent) :
|
||||
|
||||
MercurialSettings OptionsPageWidget::settings() const
|
||||
{
|
||||
MercurialSettings rc;
|
||||
rc.setBinary(m_ui.commandChooser->path());
|
||||
rc.setUserName(m_ui.defaultUsernameLineEdit->text().trimmed());
|
||||
rc.setEmail(m_ui.defaultEmailLineEdit->text().trimmed());
|
||||
rc.setLogCount(m_ui.logEntriesCount->value());
|
||||
rc.setTimeoutSeconds(m_ui.timeout->value());
|
||||
rc.setPrompt(m_ui.promptOnSubmitCheckBox->isChecked());
|
||||
return rc;
|
||||
MercurialSettings s = MercurialPlugin::instance()->settings();
|
||||
s.setValue(MercurialSettings::binaryPathKey, m_ui.commandChooser->path());
|
||||
s.setValue(MercurialSettings::userNameKey, m_ui.defaultUsernameLineEdit->text().trimmed());
|
||||
s.setValue(MercurialSettings::userEmailKey, m_ui.defaultEmailLineEdit->text().trimmed());
|
||||
s.setValue(MercurialSettings::logCountKey, m_ui.logEntriesCount->value());
|
||||
s.setValue(MercurialSettings::timeoutKey, m_ui.timeout->value());
|
||||
s.setValue(MercurialSettings::promptOnSubmitKey, m_ui.promptOnSubmitCheckBox->isChecked());
|
||||
return s;
|
||||
}
|
||||
|
||||
void OptionsPageWidget::setSettings(const MercurialSettings &s)
|
||||
{
|
||||
m_ui.commandChooser->setPath(s.binary());
|
||||
m_ui.defaultUsernameLineEdit->setText(s.userName());
|
||||
m_ui.defaultEmailLineEdit->setText(s.email());
|
||||
m_ui.logEntriesCount->setValue(s.logCount());
|
||||
m_ui.timeout->setValue(s.timeoutSeconds());
|
||||
m_ui.promptOnSubmitCheckBox->setChecked(s.prompt());
|
||||
m_ui.commandChooser->setPath(s.stringValue(MercurialSettings::binaryPathKey));
|
||||
m_ui.defaultUsernameLineEdit->setText(s.stringValue(MercurialSettings::userNameKey));
|
||||
m_ui.defaultEmailLineEdit->setText(s.stringValue(MercurialSettings::userEmailKey));
|
||||
m_ui.logEntriesCount->setValue(s.intValue(MercurialSettings::logCountKey));
|
||||
m_ui.timeout->setValue(s.intValue(MercurialSettings::timeoutKey));
|
||||
m_ui.promptOnSubmitCheckBox->setChecked(s.boolValue(MercurialSettings::promptOnSubmitKey));
|
||||
}
|
||||
|
||||
QString OptionsPageWidget::searchKeywords() const
|
||||
|
||||
Reference in New Issue
Block a user