Replace manual signal blocking/unblocking with QSignalBlocker

Change-Id: Ibb59fab4e37d045e506c5a8172b6f5cbb955b028
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
This commit is contained in:
Tobias Hunger
2017-09-30 07:12:57 +02:00
parent 7c3ea5a78c
commit c330cf0679
39 changed files with 195 additions and 226 deletions

View File

@@ -493,9 +493,8 @@ void ContextPaneWidget::setPinButton()
pinnedChanged(true); pinnedChanged(true);
if (m_resetAction) { if (m_resetAction) {
m_resetAction->blockSignals(true); QSignalBlocker blocker(m_resetAction);
m_resetAction->setChecked(true); m_resetAction->setChecked(true);
m_resetAction->blockSignals(false);
} }
} }
@@ -511,9 +510,8 @@ void ContextPaneWidget::setLineButton()
pinnedChanged(false); pinnedChanged(false);
if (m_resetAction) { if (m_resetAction) {
m_resetAction->blockSignals(true); QSignalBlocker blocker(m_resetAction);
m_resetAction->setChecked(false); m_resetAction->setChecked(false);
m_resetAction->blockSignals(false);
} }
} }

View File

@@ -478,14 +478,13 @@ void FancyLineEdit::validate()
if (validHasChanged) if (validHasChanged)
emit validChanged(newState == Valid); emit validChanged(newState == Valid);
} }
bool block = blockSignals(true);
const QString fixedString = fixInputString(t); const QString fixedString = fixInputString(t);
if (t != fixedString) { if (t != fixedString) {
const int cursorPos = cursorPosition(); const int cursorPos = cursorPosition();
QSignalBlocker blocker(this);
setText(fixedString); setText(fixedString);
setCursorPosition(qMin(cursorPos, fixedString.length())); setCursorPosition(qMin(cursorPos, fixedString.length()));
} }
blockSignals(block);
// Check buttons. // Check buttons.
if (d->m_oldText.isEmpty() || t.isEmpty()) { if (d->m_oldText.isEmpty() || t.isEmpty()) {

View File

@@ -217,12 +217,11 @@ void DefaultGdbServerProviderConfigWidget::setFromProvider()
const auto p = static_cast<DefaultGdbServerProvider *>(provider()); const auto p = static_cast<DefaultGdbServerProvider *>(provider());
Q_ASSERT(p); Q_ASSERT(p);
const auto b = blockSignals(true); QSignalBlocker blocker(this);
m_hostWidget->setHost(p->m_host); m_hostWidget->setHost(p->m_host);
m_hostWidget->setPort(p->m_port); m_hostWidget->setPort(p->m_port);
m_initCommandsTextEdit->setPlainText(p->initCommands()); m_initCommandsTextEdit->setPlainText(p->initCommands());
m_resetCommandsTextEdit->setPlainText(p->resetCommands()); m_resetCommandsTextEdit->setPlainText(p->resetCommands());
blockSignals(b);
} }
} // namespace Internal } // namespace Internal

View File

@@ -355,10 +355,9 @@ void GdbServerProviderConfigWidget::clearErrorMessage()
void GdbServerProviderConfigWidget::setFromProvider() void GdbServerProviderConfigWidget::setFromProvider()
{ {
const bool b = blockSignals(true); QSignalBlocker blocker(this);
m_nameLineEdit->setText(m_provider->displayName()); m_nameLineEdit->setText(m_provider->displayName());
setStartupMode(m_provider->startupMode()); setStartupMode(m_provider->startupMode());
blockSignals(b);
} }
QString GdbServerProviderConfigWidget::defaultInitCommandsTooltip() QString GdbServerProviderConfigWidget::defaultInitCommandsTooltip()
@@ -398,9 +397,8 @@ HostWidget::HostWidget(QWidget *parent)
void HostWidget::setHost(const QString &host) void HostWidget::setHost(const QString &host)
{ {
const bool b = blockSignals(true); QSignalBlocker blocker(this);
m_hostLineEdit->setText(host); m_hostLineEdit->setText(host);
blockSignals(b);
} }
QString HostWidget::host() const QString HostWidget::host() const
@@ -410,9 +408,8 @@ QString HostWidget::host() const
void HostWidget::setPort(const quint16 &port) void HostWidget::setPort(const quint16 &port)
{ {
const bool b = blockSignals(true); QSignalBlocker blocker(this);
m_portSpinBox->setValue(port); m_portSpinBox->setValue(port);
blockSignals(b);
} }
quint16 HostWidget::port() const quint16 HostWidget::port() const

View File

@@ -101,7 +101,7 @@ QString GdbServerProviderChooser::providerText(const GdbServerProvider *provider
void GdbServerProviderChooser::populate() void GdbServerProviderChooser::populate()
{ {
const bool b = m_chooser->blockSignals(true); QSignalBlocker blocker(m_chooser);
m_chooser->clear(); m_chooser->clear();
m_chooser->addItem(tr("None")); m_chooser->addItem(tr("None"));
@@ -110,7 +110,6 @@ void GdbServerProviderChooser::populate()
continue; continue;
m_chooser->addItem(providerText(p), qVariantFromValue(p->id())); m_chooser->addItem(providerText(p), qVariantFromValue(p->id()));
} }
m_chooser->blockSignals(b);
} }
} // namespace Internal } // namespace Internal

View File

@@ -350,7 +350,7 @@ void OpenOcdGdbServerProviderConfigWidget::setFromProvider()
const auto p = static_cast<OpenOcdGdbServerProvider *>(provider()); const auto p = static_cast<OpenOcdGdbServerProvider *>(provider());
Q_ASSERT(p); Q_ASSERT(p);
const bool b = blockSignals(true); QSignalBlocker blocker(this);
startupModeChanged(); startupModeChanged();
m_hostWidget->setHost(p->m_host); m_hostWidget->setHost(p->m_host);
m_hostWidget->setPort(p->m_port); m_hostWidget->setPort(p->m_port);
@@ -360,7 +360,6 @@ void OpenOcdGdbServerProviderConfigWidget::setFromProvider()
m_additionalArgumentsLineEdit->setText(p->m_additionalArguments); m_additionalArgumentsLineEdit->setText(p->m_additionalArguments);
m_initCommandsTextEdit->setPlainText(p->initCommands()); m_initCommandsTextEdit->setPlainText(p->initCommands());
m_resetCommandsTextEdit->setPlainText(p->resetCommands()); m_resetCommandsTextEdit->setPlainText(p->resetCommands());
blockSignals(b);
} }
} // namespace Internal } // namespace Internal

View File

@@ -391,7 +391,7 @@ void StLinkUtilGdbServerProviderConfigWidget::setFromProvider()
const auto p = static_cast<StLinkUtilGdbServerProvider *>(provider()); const auto p = static_cast<StLinkUtilGdbServerProvider *>(provider());
Q_ASSERT(p); Q_ASSERT(p);
const bool b = blockSignals(true); QSignalBlocker blocker(this);
startupModeChanged(); startupModeChanged();
m_hostWidget->setHost(p->m_host); m_hostWidget->setHost(p->m_host);
m_hostWidget->setPort(p->m_port); m_hostWidget->setPort(p->m_port);
@@ -402,7 +402,6 @@ void StLinkUtilGdbServerProviderConfigWidget::setFromProvider()
setTransportLayer(p->m_transport); setTransportLayer(p->m_transport);
m_initCommandsTextEdit->setPlainText(p->initCommands()); m_initCommandsTextEdit->setPlainText(p->initCommands());
m_resetCommandsTextEdit->setPlainText(p->resetCommands()); m_resetCommandsTextEdit->setPlainText(p->resetCommands());
blockSignals(b);
} }
} // namespace Internal } // namespace Internal

View File

@@ -105,7 +105,7 @@ void ConfigurationPanel::edit()
void ConfigurationPanel::populateConfigurations(const QString &key) void ConfigurationPanel::populateConfigurations(const QString &key)
{ {
const bool block = ui->configurations->blockSignals(true); QSignalBlocker blocker(ui->configurations);
const QString currentText = (!key.isEmpty()) ? key : ui->configurations->currentText(); const QString currentText = (!key.isEmpty()) ? key : ui->configurations->currentText();
ui->configurations->clear(); ui->configurations->clear();
ui->configurations->addItems(m_settings->styles()); ui->configurations->addItems(m_settings->styles());
@@ -113,7 +113,6 @@ void ConfigurationPanel::populateConfigurations(const QString &key)
if (textIndex != -1) if (textIndex != -1)
ui->configurations->setCurrentIndex(textIndex); ui->configurations->setCurrentIndex(textIndex);
updateButtons(); updateButtons();
ui->configurations->blockSignals(block);
} }
void ConfigurationPanel::updateButtons() void ConfigurationPanel::updateButtons()

View File

@@ -507,48 +507,50 @@ QString CMakeBuildStepConfigWidget::displayName() const
void CMakeBuildStepConfigWidget::buildTargetsChanged() void CMakeBuildStepConfigWidget::buildTargetsChanged()
{ {
const bool wasBlocked = m_buildTargetsList->blockSignals(true); {
m_buildTargetsList->clear(); QSignalBlocker blocker(m_buildTargetsList);
m_buildTargetsList->clear();
auto pro = static_cast<CMakeProject *>(m_buildStep->project()); auto pro = static_cast<CMakeProject *>(m_buildStep->project());
QStringList targetList = pro->buildTargetTitles(); QStringList targetList = pro->buildTargetTitles();
targetList.sort(); targetList.sort();
QFont italics; QFont italics;
italics.setItalic(true); italics.setItalic(true);
auto exeItem = new QListWidgetItem(tr(ADD_RUNCONFIGURATION_TEXT), m_buildTargetsList); auto exeItem = new QListWidgetItem(tr(ADD_RUNCONFIGURATION_TEXT), m_buildTargetsList);
exeItem->setData(Qt::UserRole, ADD_RUNCONFIGURATION_TEXT); exeItem->setData(Qt::UserRole, ADD_RUNCONFIGURATION_TEXT);
foreach (const QString &buildTarget, targetList) { foreach (const QString &buildTarget, targetList) {
auto item = new QListWidgetItem(buildTarget, m_buildTargetsList); auto item = new QListWidgetItem(buildTarget, m_buildTargetsList);
item->setData(Qt::UserRole, buildTarget); item->setData(Qt::UserRole, buildTarget);
}
for (int i = 0; i < m_buildTargetsList->count(); ++i) {
QListWidgetItem *item = m_buildTargetsList->item(i);
const QString title = item->data(Qt::UserRole).toString();
item->setFlags(item->flags() | Qt::ItemIsUserCheckable);
item->setCheckState(m_buildStep->buildsBuildTarget(title) ? Qt::Checked : Qt::Unchecked);
// Print utility targets in italics:
if (CMakeBuildStep::specialTargets().contains(title) || title == ADD_RUNCONFIGURATION_TEXT)
item->setFont(italics);
}
} }
for (int i = 0; i < m_buildTargetsList->count(); ++i) {
QListWidgetItem *item = m_buildTargetsList->item(i);
const QString title = item->data(Qt::UserRole).toString();
item->setFlags(item->flags() | Qt::ItemIsUserCheckable);
item->setCheckState(m_buildStep->buildsBuildTarget(title) ? Qt::Checked : Qt::Unchecked);
// Print utility targets in italics:
if (CMakeBuildStep::specialTargets().contains(title) || title == ADD_RUNCONFIGURATION_TEXT)
item->setFont(italics);
}
m_buildTargetsList->blockSignals(wasBlocked);
updateDetails(); updateDetails();
} }
void CMakeBuildStepConfigWidget::selectedBuildTargetsChanged() void CMakeBuildStepConfigWidget::selectedBuildTargetsChanged()
{ {
const bool wasBlocked = m_buildTargetsList->blockSignals(true); {
for (int y = 0; y < m_buildTargetsList->count(); ++y) { QSignalBlocker blocker(m_buildTargetsList);
QListWidgetItem *item = m_buildTargetsList->item(y); for (int y = 0; y < m_buildTargetsList->count(); ++y) {
item->setCheckState(m_buildStep->buildsBuildTarget(item->data(Qt::UserRole).toString()) QListWidgetItem *item = m_buildTargetsList->item(y);
? Qt::Checked : Qt::Unchecked); item->setCheckState(m_buildStep->buildsBuildTarget(item->data(Qt::UserRole).toString())
? Qt::Checked : Qt::Unchecked);
}
} }
m_buildTargetsList->blockSignals(wasBlocked);
updateDetails(); updateDetails();
} }

View File

@@ -550,9 +550,10 @@ void ExternalToolConfig::showInfoForItem(const QModelIndex &index)
ui->modifiesDocumentCheckbox->setChecked(tool->modifiesCurrentDocument()); ui->modifiesDocumentCheckbox->setChecked(tool->modifiesCurrentDocument());
m_environment = tool->environment(); m_environment = tool->environment();
bool blocked = ui->inputText->blockSignals(true); {
ui->inputText->setPlainText(tool->input()); QSignalBlocker blocker(ui->inputText);
ui->inputText->blockSignals(blocked); ui->inputText->setPlainText(tool->input());
}
ui->description->setCursorPosition(0); ui->description->setCursorPosition(0);
ui->arguments->setCursorPosition(0); ui->arguments->setCursorPosition(0);

View File

@@ -301,13 +301,14 @@ void FindPrivate::readSettings()
{ {
QSettings *settings = ICore::settings(); QSettings *settings = ICore::settings();
settings->beginGroup(QLatin1String("Find")); settings->beginGroup(QLatin1String("Find"));
bool block = m_instance->blockSignals(true); {
Find::setBackward(settings->value(QLatin1String("Backward"), false).toBool()); QSignalBlocker blocker(m_instance);
Find::setCaseSensitive(settings->value(QLatin1String("CaseSensitively"), false).toBool()); Find::setBackward(settings->value(QLatin1String("Backward"), false).toBool());
Find::setWholeWord(settings->value(QLatin1String("WholeWords"), false).toBool()); Find::setCaseSensitive(settings->value(QLatin1String("CaseSensitively"), false).toBool());
Find::setRegularExpression(settings->value(QLatin1String("RegularExpression"), false).toBool()); Find::setWholeWord(settings->value(QLatin1String("WholeWords"), false).toBool());
Find::setPreserveCase(settings->value(QLatin1String("PreserveCase"), false).toBool()); Find::setRegularExpression(settings->value(QLatin1String("RegularExpression"), false).toBool());
m_instance->blockSignals(block); Find::setPreserveCase(settings->value(QLatin1String("PreserveCase"), false).toBool());
}
m_findCompletions = settings->value(QLatin1String("FindStrings")).toStringList(); m_findCompletions = settings->value(QLatin1String("FindStrings")).toStringList();
m_replaceCompletions = settings->value(QLatin1String("ReplaceStrings")).toStringList(); m_replaceCompletions = settings->value(QLatin1String("ReplaceStrings")).toStringList();
m_findCompletionModel.setStringList(m_findCompletions); m_findCompletionModel.setStringList(m_findCompletions);

View File

@@ -637,9 +637,8 @@ void FindToolBar::putSelectionToFindClipboard()
void FindToolBar::updateFromFindClipboard() void FindToolBar::updateFromFindClipboard()
{ {
if (QApplication::clipboard()->supportsFindBuffer()) { if (QApplication::clipboard()->supportsFindBuffer()) {
const bool blocks = m_ui.findEdit->blockSignals(true); QSignalBlocker blocker(m_ui.findEdit);
setFindText(QApplication::clipboard()->text(QClipboard::FindBuffer)); setFindText(QApplication::clipboard()->text(QClipboard::FindBuffer));
m_ui.findEdit->blockSignals(blocks);
} }
} }

View File

@@ -128,9 +128,8 @@ void SideBarWidget::setCurrentItem(const QString &id)
if (idx < 0) if (idx < 0)
idx = 0; idx = 0;
bool blocked = m_comboBox->blockSignals(true); QSignalBlocker blocker(m_comboBox);
m_comboBox->setCurrentIndex(idx); m_comboBox->setCurrentIndex(idx);
m_comboBox->blockSignals(blocked);
} }
SideBarItem *item = m_sideBar->item(id); SideBarItem *item = m_sideBar->item(id);
@@ -149,7 +148,7 @@ void SideBarWidget::setCurrentItem(const QString &id)
void SideBarWidget::updateAvailableItems() void SideBarWidget::updateAvailableItems()
{ {
bool blocked = m_comboBox->blockSignals(true); QSignalBlocker blocker(m_comboBox);
QString currentTitle = m_comboBox->currentText(); QString currentTitle = m_comboBox->currentText();
m_comboBox->clear(); m_comboBox->clear();
QStringList titleList = m_sideBar->availableItemTitles(); QStringList titleList = m_sideBar->availableItemTitles();
@@ -167,7 +166,6 @@ void SideBarWidget::updateAvailableItems()
m_comboBox->setCurrentIndex(idx); m_comboBox->setCurrentIndex(idx);
m_splitAction->setEnabled(titleList.count() > 1); m_splitAction->setEnabled(titleList.count() > 1);
m_comboBox->blockSignals(blocked);
} }
void SideBarWidget::removeCurrentItem() void SideBarWidget::removeCurrentItem()

View File

@@ -155,9 +155,10 @@ void CppEditorOutline::setSorted(bool sort)
m_proxyModel->sort(0, Qt::AscendingOrder); m_proxyModel->sort(0, Qt::AscendingOrder);
else else
m_proxyModel->sort(-1, Qt::AscendingOrder); m_proxyModel->sort(-1, Qt::AscendingOrder);
bool block = m_sortAction->blockSignals(true); {
m_sortAction->setChecked(m_proxyModel->sortColumn() == 0); QSignalBlocker blocker(m_sortAction);
m_sortAction->blockSignals(block); m_sortAction->setChecked(m_proxyModel->sortColumn() == 0);
}
updateIndexNow(); updateIndexNow();
} }
} }
@@ -226,10 +227,9 @@ void CppEditorOutline::updateIndexNow()
QModelIndex comboIndex = modelIndex(); QModelIndex comboIndex = modelIndex();
if (comboIndex.isValid()) { if (comboIndex.isValid()) {
bool blocked = m_combo->blockSignals(true); QSignalBlocker blocker(m_combo);
m_combo->setCurrentIndex(m_proxyModel->mapFromSource(comboIndex)); m_combo->setCurrentIndex(m_proxyModel->mapFromSource(comboIndex));
updateToolTip(); updateToolTip();
m_combo->blockSignals(blocked);
} }
} }

View File

@@ -645,12 +645,11 @@ public:
void setThreadBoxContents(const QStringList &list, int index) void setThreadBoxContents(const QStringList &list, int index)
{ {
const bool state = m_threadBox->blockSignals(true); QSignalBlocker blocker(m_threadBox);
m_threadBox->clear(); m_threadBox->clear();
foreach (const QString &item, list) foreach (const QString &item, list)
m_threadBox->addItem(item); m_threadBox->addItem(item);
m_threadBox->setCurrentIndex(index); m_threadBox->setCurrentIndex(index);
m_threadBox->blockSignals(state);
} }
RunControl *attachToRunningProcess(Kit *kit, DeviceProcessItem process, bool contAfterAttach); RunControl *attachToRunningProcess(Kit *kit, DeviceProcessItem process, bool contAfterAttach);

View File

@@ -339,10 +339,9 @@ void DiffEditorDocument::beginReload()
emit aboutToReload(); emit aboutToReload();
m_state = Reloading; m_state = Reloading;
emit changed(); emit changed();
const bool blocked = blockSignals(true); QSignalBlocker blocker(this);
setDiffFiles(QList<FileData>(), QString()); setDiffFiles(QList<FileData>(), QString());
setDescription(QString()); setDescription(QString());
blockSignals(blocked);
} }
void DiffEditorDocument::endReload(bool success) void DiffEditorDocument::endReload(bool success)

View File

@@ -137,14 +137,15 @@ public:
int messageLevel, FakeVimHandler *eventFilter) int messageLevel, FakeVimHandler *eventFilter)
{ {
if (cursorPos != -1) { if (cursorPos != -1) {
m_edit->blockSignals(true); {
m_label->clear(); QSignalBlocker blocker(m_edit);
m_edit->setText(contents); m_label->clear();
if (anchorPos != -1 && anchorPos != cursorPos) m_edit->setText(contents);
m_edit->setSelection(anchorPos, cursorPos - anchorPos); if (anchorPos != -1 && anchorPos != cursorPos)
else m_edit->setSelection(anchorPos, cursorPos - anchorPos);
m_edit->setCursorPosition(cursorPos); else
m_edit->blockSignals(false); m_edit->setCursorPosition(cursorPos);
}
setCurrentWidget(m_edit); setCurrentWidget(m_edit);
m_edit->setFocus(); m_edit->setFocus();
} else { } else {

View File

@@ -223,43 +223,44 @@ void GerritPushDialog::storeTopic()
void GerritPushDialog::setRemoteBranches(bool includeOld) void GerritPushDialog::setRemoteBranches(bool includeOld)
{ {
bool blocked = m_ui->targetBranchComboBox->blockSignals(true); {
m_ui->targetBranchComboBox->clear(); QSignalBlocker blocker(m_ui->targetBranchComboBox);
m_ui->targetBranchComboBox->clear();
const QString remoteName = selectedRemoteName(); const QString remoteName = selectedRemoteName();
if (!m_remoteBranches.contains(remoteName)) { if (!m_remoteBranches.contains(remoteName)) {
const QStringList remoteBranches = const QStringList remoteBranches =
GitPlugin::client()->synchronousRepositoryBranches(remoteName, m_workingDir); GitPlugin::client()->synchronousRepositoryBranches(remoteName, m_workingDir);
for (const QString &branch : remoteBranches) for (const QString &branch : remoteBranches)
m_remoteBranches.insertMulti(remoteName, qMakePair(branch, QDate())); m_remoteBranches.insertMulti(remoteName, qMakePair(branch, QDate()));
if (remoteBranches.isEmpty()) { if (remoteBranches.isEmpty()) {
m_ui->targetBranchComboBox->setEditable(true); m_ui->targetBranchComboBox->setEditable(true);
m_ui->targetBranchComboBox->setToolTip( m_ui->targetBranchComboBox->setToolTip(
tr("No remote branches found. This is probably the initial commit.")); tr("No remote branches found. This is probably the initial commit."));
if (QLineEdit *lineEdit = m_ui->targetBranchComboBox->lineEdit()) if (QLineEdit *lineEdit = m_ui->targetBranchComboBox->lineEdit())
lineEdit->setPlaceholderText(tr("Branch name")); lineEdit->setPlaceholderText(tr("Branch name"));
}
} }
}
int i = 0; int i = 0;
bool excluded = false; bool excluded = false;
const QList<BranchDate> remoteBranches = m_remoteBranches.values(remoteName); const QList<BranchDate> remoteBranches = m_remoteBranches.values(remoteName);
for (const BranchDate &bd : remoteBranches) { for (const BranchDate &bd : remoteBranches) {
const bool isSuggested = bd.first == m_suggestedRemoteBranch; const bool isSuggested = bd.first == m_suggestedRemoteBranch;
if (includeOld || isSuggested || !bd.second.isValid() if (includeOld || isSuggested || !bd.second.isValid()
|| bd.second.daysTo(QDate::currentDate()) <= Git::Constants::OBSOLETE_COMMIT_AGE_IN_DAYS) { || bd.second.daysTo(QDate::currentDate()) <= Git::Constants::OBSOLETE_COMMIT_AGE_IN_DAYS) {
m_ui->targetBranchComboBox->addItem(bd.first); m_ui->targetBranchComboBox->addItem(bd.first);
if (isSuggested) if (isSuggested)
m_ui->targetBranchComboBox->setCurrentIndex(i); m_ui->targetBranchComboBox->setCurrentIndex(i);
++i; ++i;
} else { } else {
excluded = true; excluded = true;
}
} }
if (excluded)
m_ui->targetBranchComboBox->addItem(tr("... Include older branches ..."), 1);
setChangeRange();
} }
if (excluded)
m_ui->targetBranchComboBox->addItem(tr("... Include older branches ..."), 1);
setChangeRange();
m_ui->targetBranchComboBox->blockSignals(blocked);
validate(); validate();
} }

View File

@@ -232,7 +232,7 @@ void GeneralSettingsPage::updateFontSizeSelector()
if (pointSizes.empty()) if (pointSizes.empty())
pointSizes = QFontDatabase::standardSizes(); pointSizes = QFontDatabase::standardSizes();
bool blocked = m_ui->sizeComboBox->blockSignals(true); QSignalBlocker blocker(m_ui->sizeComboBox);
m_ui->sizeComboBox->clear(); m_ui->sizeComboBox->clear();
m_ui->sizeComboBox->setCurrentIndex(-1); m_ui->sizeComboBox->setCurrentIndex(-1);
m_ui->sizeComboBox->setEnabled(!pointSizes.empty()); m_ui->sizeComboBox->setEnabled(!pointSizes.empty());
@@ -246,7 +246,6 @@ void GeneralSettingsPage::updateFontSizeSelector()
if (closestIndex != -1) if (closestIndex != -1)
m_ui->sizeComboBox->setCurrentIndex(closestIndex); m_ui->sizeComboBox->setCurrentIndex(closestIndex);
} }
m_ui->sizeComboBox->blockSignals(blocked);
} }
void GeneralSettingsPage::updateFontStyleSelector() void GeneralSettingsPage::updateFontStyleSelector()
@@ -254,7 +253,7 @@ void GeneralSettingsPage::updateFontStyleSelector()
const QString &fontStyle = m_fontDatabase.styleString(m_font); const QString &fontStyle = m_fontDatabase.styleString(m_font);
const QStringList &styles = m_fontDatabase.styles(m_font.family()); const QStringList &styles = m_fontDatabase.styles(m_font.family());
bool blocked = m_ui->styleComboBox->blockSignals(true); QSignalBlocker blocker(m_ui->styleComboBox);
m_ui->styleComboBox->clear(); m_ui->styleComboBox->clear();
m_ui->styleComboBox->setCurrentIndex(-1); m_ui->styleComboBox->setCurrentIndex(-1);
m_ui->styleComboBox->setEnabled(!styles.empty()); m_ui->styleComboBox->setEnabled(!styles.empty());
@@ -276,7 +275,6 @@ void GeneralSettingsPage::updateFontStyleSelector()
if (m_ui->styleComboBox->currentIndex() == -1 && normalIndex != -1) if (m_ui->styleComboBox->currentIndex() == -1 && normalIndex != -1)
m_ui->styleComboBox->setCurrentIndex(normalIndex); m_ui->styleComboBox->setCurrentIndex(normalIndex);
} }
m_ui->styleComboBox->blockSignals(blocked);
} }
void GeneralSettingsPage::updateFontFamilySelector() void GeneralSettingsPage::updateFontFamilySelector()

View File

@@ -163,18 +163,16 @@ void ExportDialog::resetExportSize()
void ExportDialog::setExportWidthBlocked(int width) void ExportDialog::setExportWidthBlocked(int width)
{ {
if (m_widthSpinBox->value() != width) { if (m_widthSpinBox->value() != width) {
const bool blockSignals = m_widthSpinBox->blockSignals(true); QSignalBlocker blocker(m_widthSpinBox);
m_widthSpinBox->setValue(width); m_widthSpinBox->setValue(width);
m_widthSpinBox->blockSignals(blockSignals);
} }
} }
void ExportDialog::setExportHeightBlocked(int height) void ExportDialog::setExportHeightBlocked(int height)
{ {
if (m_heightSpinBox->value() != height) { if (m_heightSpinBox->value() != height) {
const bool blockSignals = m_heightSpinBox->blockSignals(true); QSignalBlocker blocker(m_heightSpinBox);
m_heightSpinBox->setValue(height); m_heightSpinBox->setValue(height);
m_heightSpinBox->blockSignals(blockSignals);
} }
} }

View File

@@ -166,17 +166,18 @@ void IosBuildSettingsWidget::configureSigningUi(bool autoManageSigning)
void IosBuildSettingsWidget::populateDevelopmentTeams() void IosBuildSettingsWidget::populateDevelopmentTeams()
{ {
// Populate Team id's {
ui->m_signEntityCombo->blockSignals(true); QSignalBlocker blocker(ui->m_signEntityCombo);
ui->m_signEntityCombo->clear(); // Populate Team id's
ui->m_signEntityCombo->addItem(tr("Default")); ui->m_signEntityCombo->clear();
foreach (auto team, IosConfigurations::developmentTeams()) { ui->m_signEntityCombo->addItem(tr("Default"));
ui->m_signEntityCombo->addItem(team->displayName()); foreach (auto team, IosConfigurations::developmentTeams()) {
const int index = ui->m_signEntityCombo->count() - 1; ui->m_signEntityCombo->addItem(team->displayName());
ui->m_signEntityCombo->setItemData(index, team->identifier(), IdentifierRole); const int index = ui->m_signEntityCombo->count() - 1;
ui->m_signEntityCombo->setItemData(index, team->details(), Qt::ToolTipRole); ui->m_signEntityCombo->setItemData(index, team->identifier(), IdentifierRole);
ui->m_signEntityCombo->setItemData(index, team->details(), Qt::ToolTipRole);
}
} }
ui->m_signEntityCombo->blockSignals(false);
// Maintain previous selection. // Maintain previous selection.
setDefaultSigningIdentfier(m_lastTeamSelection); setDefaultSigningIdentfier(m_lastTeamSelection);
updateWarningText(); updateWarningText();
@@ -184,21 +185,22 @@ void IosBuildSettingsWidget::populateDevelopmentTeams()
void IosBuildSettingsWidget::populateProvisioningProfiles() void IosBuildSettingsWidget::populateProvisioningProfiles()
{ {
// Populate Team id's {
ui->m_signEntityCombo->blockSignals(true); // Populate Team id's
ui->m_signEntityCombo->clear(); QSignalBlocker blocker(ui->m_signEntityCombo);
ProvisioningProfiles profiles = IosConfigurations::provisioningProfiles(); ui->m_signEntityCombo->clear();
if (profiles.count() > 0) { ProvisioningProfiles profiles = IosConfigurations::provisioningProfiles();
foreach (auto profile, profiles) { if (profiles.count() > 0) {
ui->m_signEntityCombo->addItem(profile->displayName()); foreach (auto profile, profiles) {
const int index = ui->m_signEntityCombo->count() - 1; ui->m_signEntityCombo->addItem(profile->displayName());
ui->m_signEntityCombo->setItemData(index, profile->identifier(), IdentifierRole); const int index = ui->m_signEntityCombo->count() - 1;
ui->m_signEntityCombo->setItemData(index, profile->details(), Qt::ToolTipRole); ui->m_signEntityCombo->setItemData(index, profile->identifier(), IdentifierRole);
ui->m_signEntityCombo->setItemData(index, profile->details(), Qt::ToolTipRole);
}
} else {
ui->m_signEntityCombo->addItem(tr("None"));
} }
} else {
ui->m_signEntityCombo->addItem(tr("None"));
} }
ui->m_signEntityCombo->blockSignals(false);
// Maintain previous selection. // Maintain previous selection.
setDefaultSigningIdentfier(m_lastProfileSelection); setDefaultSigningIdentfier(m_lastProfileSelection);
updateWarningText(); updateWarningText();

View File

@@ -153,7 +153,7 @@ AbiWidget::~AbiWidget()
void AbiWidget::setAbis(const QList<Abi> &abiList, const Abi &current) void AbiWidget::setAbis(const QList<Abi> &abiList, const Abi &current)
{ {
bool blocked = blockSignals(true); QSignalBlocker blocker(this);
d->m_abi->clear(); d->m_abi->clear();
Abi defaultAbi = current; Abi defaultAbi = current;
@@ -183,8 +183,6 @@ void AbiWidget::setAbis(const QList<Abi> &abiList, const Abi &current)
setCustomAbi(current); setCustomAbi(current);
} }
modeChanged(); modeChanged();
blockSignals(blocked);
} }
QList<Abi> AbiWidget::supportedAbis() const QList<Abi> AbiWidget::supportedAbis() const
@@ -208,14 +206,15 @@ Abi AbiWidget::currentAbi() const
void AbiWidget::osChanged() void AbiWidget::osChanged()
{ {
bool blocked = d->m_osFlavorComboBox->blockSignals(true); {
d->m_osFlavorComboBox->clear(); QSignalBlocker blocker(d->m_osFlavorComboBox);
Abi::OS os = static_cast<Abi::OS>(d->m_osComboBox->itemData(d->m_osComboBox->currentIndex()).toInt()); d->m_osFlavorComboBox->clear();
QList<Abi::OSFlavor> flavors = Abi::flavorsForOs(os); Abi::OS os = static_cast<Abi::OS>(d->m_osComboBox->itemData(d->m_osComboBox->currentIndex()).toInt());
foreach (Abi::OSFlavor f, flavors) QList<Abi::OSFlavor> flavors = Abi::flavorsForOs(os);
d->m_osFlavorComboBox->addItem(Abi::toString(f), static_cast<int>(f)); foreach (Abi::OSFlavor f, flavors)
d->m_osFlavorComboBox->setCurrentIndex(0); // default to generic flavor d->m_osFlavorComboBox->addItem(Abi::toString(f), static_cast<int>(f));
d->m_osFlavorComboBox->blockSignals(blocked); d->m_osFlavorComboBox->setCurrentIndex(0); // default to generic flavor
}
customAbiChanged(); customAbiChanged();
} }
@@ -248,26 +247,27 @@ void AbiWidget::customAbiChanged()
void AbiWidget::setCustomAbi(const Abi &current) void AbiWidget::setCustomAbi(const Abi &current)
{ {
bool blocked = blockSignals(true); {
d->m_architectureComboBox->setCurrentIndex(static_cast<int>(current.architecture())); QSignalBlocker blocker(this);
d->m_osComboBox->setCurrentIndex(static_cast<int>(current.os())); d->m_architectureComboBox->setCurrentIndex(static_cast<int>(current.architecture()));
osChanged(); d->m_osComboBox->setCurrentIndex(static_cast<int>(current.os()));
for (int i = 0; i < d->m_osFlavorComboBox->count(); ++i) { osChanged();
if (d->m_osFlavorComboBox->itemData(i).toInt() == current.osFlavor()) { for (int i = 0; i < d->m_osFlavorComboBox->count(); ++i) {
d->m_osFlavorComboBox->setCurrentIndex(i); if (d->m_osFlavorComboBox->itemData(i).toInt() == current.osFlavor()) {
break; d->m_osFlavorComboBox->setCurrentIndex(i);
break;
}
} }
} d->m_binaryFormatComboBox->setCurrentIndex(static_cast<int>(current.binaryFormat()));
d->m_binaryFormatComboBox->setCurrentIndex(static_cast<int>(current.binaryFormat())); for (int i = 0; i < d->m_wordWidthComboBox->count(); ++i) {
for (int i = 0; i < d->m_wordWidthComboBox->count(); ++i) { if (d->m_wordWidthComboBox->itemData(i).toInt() == current.wordWidth()) {
if (d->m_wordWidthComboBox->itemData(i).toInt() == current.wordWidth()) { d->m_wordWidthComboBox->setCurrentIndex(i);
d->m_wordWidthComboBox->setCurrentIndex(i); break;
break; }
} }
if (d->isCustom())
d->m_abi->setItemData(0, current.toString());
} }
if (d->isCustom())
d->m_abi->setItemData(0, current.toString());
blockSignals(blocked);
emit abiChanged(); emit abiChanged();
} }

View File

@@ -661,7 +661,7 @@ void CustomToolChainConfigWidget::applyImpl()
void CustomToolChainConfigWidget::setFromToolchain() void CustomToolChainConfigWidget::setFromToolchain()
{ {
// subwidgets are not yet connected! // subwidgets are not yet connected!
bool blocked = blockSignals(true); QSignalBlocker blocker(this);
auto tc = static_cast<CustomToolChain *>(toolChain()); auto tc = static_cast<CustomToolChain *>(toolChain());
m_compilerCommand->setFileName(tc->compilerCommand()); m_compilerCommand->setFileName(tc->compilerCommand());
m_makeCommand->setFileName(FileName::fromString(tc->makeCommand(Environment()))); m_makeCommand->setFileName(FileName::fromString(tc->makeCommand(Environment())));
@@ -673,7 +673,6 @@ void CustomToolChainConfigWidget::setFromToolchain()
int index = m_errorParserComboBox->findData(tc->outputParserId().toSetting()); int index = m_errorParserComboBox->findData(tc->outputParserId().toSetting());
m_errorParserComboBox->setCurrentIndex(index); m_errorParserComboBox->setCurrentIndex(index);
m_customParserSettings = tc->customParserSettings(); m_customParserSettings = tc->customParserSettings();
blockSignals(blocked);
} }
bool CustomToolChainConfigWidget::isDirtyImpl() const bool CustomToolChainConfigWidget::isDirtyImpl() const

View File

@@ -1149,7 +1149,7 @@ void GccToolChainConfigWidget::applyImpl()
void GccToolChainConfigWidget::setFromToolchain() void GccToolChainConfigWidget::setFromToolchain()
{ {
// subwidgets are not yet connected! // subwidgets are not yet connected!
bool blocked = blockSignals(true); QSignalBlocker blocker(this);
auto tc = static_cast<GccToolChain *>(toolChain()); auto tc = static_cast<GccToolChain *>(toolChain());
m_compilerCommand->setFileName(tc->compilerCommand()); m_compilerCommand->setFileName(tc->compilerCommand());
m_platformCodeGenFlagsLineEdit->setText(QtcProcess::joinArgs(tc->platformCodeGenFlags())); m_platformCodeGenFlagsLineEdit->setText(QtcProcess::joinArgs(tc->platformCodeGenFlags()));
@@ -1157,7 +1157,6 @@ void GccToolChainConfigWidget::setFromToolchain()
m_abiWidget->setAbis(tc->supportedAbis(), tc->targetAbi()); m_abiWidget->setAbis(tc->supportedAbis(), tc->targetAbi());
if (!m_isReadOnly && !m_compilerCommand->path().isEmpty()) if (!m_isReadOnly && !m_compilerCommand->path().isEmpty())
m_abiWidget->setEnabled(true); m_abiWidget->setEnabled(true);
blockSignals(blocked);
} }
bool GccToolChainConfigWidget::isDirtyImpl() const bool GccToolChainConfigWidget::isDirtyImpl() const

View File

@@ -74,7 +74,7 @@ QWidget *ChangeStyleWidgetAction::createWidget(QWidget *parent)
if (!comboBox) if (!comboBox)
return; return;
bool block = comboBox->blockSignals(true); QSignalBlocker blocker(comboBox);
if (style.isEmpty()) { /* The .conf file is misssing. */ if (style.isEmpty()) { /* The .conf file is misssing. */
comboBox->setDisabled(true); comboBox->setDisabled(true);
@@ -85,8 +85,6 @@ QWidget *ChangeStyleWidgetAction::createWidget(QWidget *parent)
comboBox->setToolTip(tr(enabledTooltip)); comboBox->setToolTip(tr(enabledTooltip));
comboBox->setEditText(style); comboBox->setEditText(style);
} }
comboBox->blockSignals(block);
}); });
connect(comboBox, connect(comboBox,

View File

@@ -160,22 +160,19 @@ void ComponentView::modelAttached(Model *model)
if (AbstractView::model() == model) if (AbstractView::model() == model)
return; return;
bool block = m_componentAction->blockSignals(true); QSignalBlocker blocker(m_componentAction);
m_standardItemModel->clear(); m_standardItemModel->clear();
AbstractView::modelAttached(model); AbstractView::modelAttached(model);
searchForComponentAndAddToList(rootModelNode()); searchForComponentAndAddToList(rootModelNode());
m_componentAction->blockSignals(block);
} }
void ComponentView::modelAboutToBeDetached(Model *model) void ComponentView::modelAboutToBeDetached(Model *model)
{ {
bool block = m_componentAction->blockSignals(true); QSignalBlocker blocker(m_componentAction);
m_standardItemModel->clear(); m_standardItemModel->clear();
AbstractView::modelAboutToBeDetached(model); AbstractView::modelAboutToBeDetached(model);
m_componentAction->blockSignals(block);
} }
ComponentAction *ComponentView::action() ComponentAction *ComponentView::action()

View File

@@ -117,9 +117,10 @@ void DocumentWarningWidget::refreshContent()
m_continueButton->setText(tr("OK")); m_continueButton->setText(tr("OK"));
} else { } else {
m_headerLabel->setText(tr("This QML file contains features which are not supported by Qt Quick Designer at:")); m_headerLabel->setText(tr("This QML file contains features which are not supported by Qt Quick Designer at:"));
bool block = m_ignoreWarningsCheckBox->blockSignals(true); {
m_ignoreWarningsCheckBox->setChecked(!warningsEnabled()); QSignalBlocker blocker(m_ignoreWarningsCheckBox);
m_ignoreWarningsCheckBox->blockSignals(block); m_ignoreWarningsCheckBox->setChecked(!warningsEnabled());
}
m_ignoreWarningsCheckBox->show(); m_ignoreWarningsCheckBox->show();
m_continueButton->setText(tr("Ignore")); m_continueButton->setText(tr("Ignore"));
} }

View File

@@ -54,14 +54,13 @@ AddNewBackendDialog::~AddNewBackendDialog()
void AddNewBackendDialog::setupPossibleTypes(const QList<CppTypeData> &types) void AddNewBackendDialog::setupPossibleTypes(const QList<CppTypeData> &types)
{ {
bool block = blockSignals(true); QSignalBlocker blocker(this);
m_typeData = types; m_typeData = types;
for (const CppTypeData &typeData : types) for (const CppTypeData &typeData : types)
m_ui->comboBox->addItem(typeData.typeName); m_ui->comboBox->addItem(typeData.typeName);
m_ui->buttonBox->button(QDialogButtonBox::Ok)->setEnabled(m_ui->comboBox->count() > 0); m_ui->buttonBox->button(QDialogButtonBox::Ok)->setEnabled(m_ui->comboBox->count() > 0);
invalidate(); invalidate();
blockSignals(block);
} }
QString AddNewBackendDialog::importString() const QString AddNewBackendDialog::importString() const

View File

@@ -257,14 +257,12 @@ void QmlJSEditorWidget::updateOutlineIndexNow()
emit outlineModelIndexChanged(m_outlineModelIndex); emit outlineModelIndexChanged(m_outlineModelIndex);
if (comboIndex.isValid()) { if (comboIndex.isValid()) {
bool blocked = m_outlineCombo->blockSignals(true); QSignalBlocker blocker(m_outlineCombo);
// There is no direct way to select a non-root item // There is no direct way to select a non-root item
m_outlineCombo->setRootModelIndex(comboIndex.parent()); m_outlineCombo->setRootModelIndex(comboIndex.parent());
m_outlineCombo->setCurrentIndex(comboIndex.row()); m_outlineCombo->setCurrentIndex(comboIndex.row());
m_outlineCombo->setRootModelIndex(QModelIndex()); m_outlineCombo->setRootModelIndex(QModelIndex());
m_outlineCombo->blockSignals(blocked);
} }
} }
} // namespace Internal } // namespace Internal

View File

@@ -85,14 +85,15 @@ int QmlProfilerNotesModel::addQmlNote(int typeId, int collapsedRow, qint64 start
void QmlProfilerNotesModel::loadData() void QmlProfilerNotesModel::loadData()
{ {
blockSignals(true); {
for (int i = 0; i != m_notes.size(); ++i) { QSignalBlocker blocker(this);
QmlNote &note = m_notes[i]; for (int i = 0; i != m_notes.size(); ++i) {
note.setLoaded(addQmlNote(note.typeIndex(), note.collapsedRow(), note.startTime(), QmlNote &note = m_notes[i];
note.duration(), note.text()) != -1); note.setLoaded(addQmlNote(note.typeIndex(), note.collapsedRow(), note.startTime(),
note.duration(), note.text()) != -1);
}
resetModified();
} }
resetModified();
blockSignals(false);
emit changed(-1, -1, -1); emit changed(-1, -1, -1);
} }

View File

@@ -309,14 +309,13 @@ void QnxToolChainConfigWidget::applyImpl()
void QnxToolChainConfigWidget::discardImpl() void QnxToolChainConfigWidget::discardImpl()
{ {
// subwidgets are not yet connected! // subwidgets are not yet connected!
bool blocked = blockSignals(true); QSignalBlocker blocker(this);
QnxToolChain *tc = static_cast<QnxToolChain *>(toolChain()); QnxToolChain *tc = static_cast<QnxToolChain *>(toolChain());
m_compilerCommand->setFileName(tc->compilerCommand()); m_compilerCommand->setFileName(tc->compilerCommand());
m_sdpPath->setPath(tc->sdpPath()); m_sdpPath->setPath(tc->sdpPath());
m_abiWidget->setAbis(tc->supportedAbis(), tc->targetAbi()); m_abiWidget->setAbis(tc->supportedAbis(), tc->targetAbi());
if (!m_compilerCommand->path().isEmpty()) if (!m_compilerCommand->path().isEmpty())
m_abiWidget->setEnabled(true); m_abiWidget->setEnabled(true);
blockSignals(blocked);
} }
bool QnxToolChainConfigWidget::isDirtyImpl() const bool QnxToolChainConfigWidget::isDirtyImpl() const

View File

@@ -51,7 +51,6 @@ void NavigatorSlider::zoomOut()
void NavigatorSlider::setSliderValue(int val) void NavigatorSlider::setSliderValue(int val)
{ {
m_ui.m_slider->blockSignals(true); QSignalBlocker blocker(m_ui.m_slider);
m_ui.m_slider->setValue(val); m_ui.m_slider->setValue(val);
m_ui.m_slider->blockSignals(false);
} }

View File

@@ -193,8 +193,7 @@ void StateProperties::setContentVisibility(bool visible)
void StateProperties::updateContent() void StateProperties::updateContent()
{ {
if (!m_contentEdit->hasFocus()) { if (!m_contentEdit->hasFocus()) {
m_contentEdit->blockSignals(true); QSignalBlocker blocker(m_contentEdit);
m_contentEdit->setPlainText(content()); m_contentEdit->setPlainText(content());
m_contentEdit->blockSignals(false);
} }
} }

View File

@@ -84,9 +84,8 @@ void TextItem::checkText()
void TextItem::setText(const QString &t) void TextItem::setText(const QString &t)
{ {
blockSignals(true); QSignalBlocker blocker(this);
setPlainText(t); setPlainText(t);
blockSignals(false);
} }
void TextItem::focusInEvent(QFocusEvent *event) void TextItem::focusInEvent(QFocusEvent *event)

View File

@@ -242,9 +242,8 @@ void CodeStyleSelectorWidget::slotComboBoxActivated(int index)
ICodeStylePreferences *delegate = ICodeStylePreferences *delegate =
m_ui->delegateComboBox->itemData(index).value<ICodeStylePreferences *>(); m_ui->delegateComboBox->itemData(index).value<ICodeStylePreferences *>();
const bool wasBlocked = blockSignals(true); QSignalBlocker blocker(this);
m_codeStyle->setCurrentDelegate(delegate); m_codeStyle->setCurrentDelegate(delegate);
blockSignals(wasBlocked);
} }
void CodeStyleSelectorWidget::slotCurrentDelegateChanged(ICodeStylePreferences *delegate) void CodeStyleSelectorWidget::slotCurrentDelegateChanged(ICodeStylePreferences *delegate)

View File

@@ -59,12 +59,11 @@ TabSettingsWidget::~TabSettingsWidget()
void TabSettingsWidget::setTabSettings(const TextEditor::TabSettings& s) void TabSettingsWidget::setTabSettings(const TextEditor::TabSettings& s)
{ {
const bool wasBlocked = blockSignals(true); QSignalBlocker blocker(this);
ui->tabPolicy->setCurrentIndex(s.m_tabPolicy); ui->tabPolicy->setCurrentIndex(s.m_tabPolicy);
ui->tabSize->setValue(s.m_tabSize); ui->tabSize->setValue(s.m_tabSize);
ui->indentSize->setValue(s.m_indentSize); ui->indentSize->setValue(s.m_indentSize);
ui->continuationAlignBehavior->setCurrentIndex(s.m_continuationAlignBehavior); ui->continuationAlignBehavior->setCurrentIndex(s.m_continuationAlignBehavior);
blockSignals(wasBlocked);
} }
TabSettings TabSettingsWidget::tabSettings() const TabSettings TabSettingsWidget::tabSettings() const

View File

@@ -42,9 +42,8 @@ enum { spacing = 2 };
static void inline setComboBlocked(QComboBox *cb, int index) static void inline setComboBlocked(QComboBox *cb, int index)
{ {
const bool blocked = cb->blockSignals(true); QSignalBlocker blocker(cb);
cb->setCurrentIndex(index); cb->setCurrentIndex(index);
cb->blockSignals(blocked);
} }
/*! /*!

View File

@@ -943,9 +943,8 @@ void VcsBaseEditorWidget::slotCursorPositionChanged()
if (section != -1) { if (section != -1) {
QComboBox *entriesComboBox = d->entriesComboBox(); QComboBox *entriesComboBox = d->entriesComboBox();
if (entriesComboBox->currentIndex() != section) { if (entriesComboBox->currentIndex() != section) {
const bool blocked = entriesComboBox->blockSignals(true); QSignalBlocker blocker(entriesComboBox);
entriesComboBox->setCurrentIndex(section); entriesComboBox->setCurrentIndex(section);
entriesComboBox->blockSignals(blocked);
} }
} }
} }

View File

@@ -181,9 +181,8 @@ void VcsBaseEditorConfig::mapSetting(QAction *button, bool *setting)
if (!d->m_settingMapping.contains(button) && button) { if (!d->m_settingMapping.contains(button) && button) {
d->m_settingMapping.insert(button, Internal::SettingMappingData(setting)); d->m_settingMapping.insert(button, Internal::SettingMappingData(setting));
if (setting) { if (setting) {
button->blockSignals(true); QSignalBlocker blocker(button);
button->setChecked(*setting); button->setChecked(*setting);
button->blockSignals(false);
} }
} }
} }
@@ -193,11 +192,10 @@ void VcsBaseEditorConfig::mapSetting(QComboBox *comboBox, QString *setting)
if (!d->m_settingMapping.contains(comboBox) && comboBox) { if (!d->m_settingMapping.contains(comboBox) && comboBox) {
d->m_settingMapping.insert(comboBox, Internal::SettingMappingData(setting)); d->m_settingMapping.insert(comboBox, Internal::SettingMappingData(setting));
if (setting) { if (setting) {
comboBox->blockSignals(true); QSignalBlocker blocker(comboBox);
const int itemIndex = comboBox->findData(*setting); const int itemIndex = comboBox->findData(*setting);
if (itemIndex != -1) if (itemIndex != -1)
comboBox->setCurrentIndex(itemIndex); comboBox->setCurrentIndex(itemIndex);
comboBox->blockSignals(false);
} }
} }
} }
@@ -212,9 +210,8 @@ void VcsBaseEditorConfig::mapSetting(QComboBox *comboBox, int *setting)
if (!setting || *setting < 0 || *setting >= comboBox->count()) if (!setting || *setting < 0 || *setting >= comboBox->count())
return; return;
comboBox->blockSignals(true); QSignalBlocker blocker(comboBox);
comboBox->setCurrentIndex(*setting); comboBox->setCurrentIndex(*setting);
comboBox->blockSignals(false);
} }
void VcsBaseEditorConfig::handleArgumentsChanged() void VcsBaseEditorConfig::handleArgumentsChanged()