diff options
Diffstat (limited to 'examples/widgets')
-rw-r--r-- | examples/widgets/mainwindows/mainwindow/colorswatch.cpp | 31 | ||||
-rw-r--r-- | examples/widgets/widgets/charactermap/mainwindow.cpp | 32 |
2 files changed, 34 insertions, 29 deletions
diff --git a/examples/widgets/mainwindows/mainwindow/colorswatch.cpp b/examples/widgets/mainwindows/mainwindow/colorswatch.cpp index c472df966c..c47b80275f 100644 --- a/examples/widgets/mainwindows/mainwindow/colorswatch.cpp +++ b/examples/widgets/mainwindows/mainwindow/colorswatch.cpp @@ -61,6 +61,7 @@ #include <QDialog> #include <QDialogButtonBox> #include <QGridLayout> +#include <QSignalBlocker> #include <QSpinBox> #include <QLabel> #include <QPainterPath> @@ -426,20 +427,22 @@ void ColorSwatch::updateContextMenu() allowBottomAction->setEnabled(area != Qt::BottomDockWidgetArea); } - leftAction->blockSignals(true); - rightAction->blockSignals(true); - topAction->blockSignals(true); - bottomAction->blockSignals(true); - - leftAction->setChecked(area == Qt::LeftDockWidgetArea); - rightAction->setChecked(area == Qt::RightDockWidgetArea); - topAction->setChecked(area == Qt::TopDockWidgetArea); - bottomAction->setChecked(area == Qt::BottomDockWidgetArea); - - leftAction->blockSignals(false); - rightAction->blockSignals(false); - topAction->blockSignals(false); - bottomAction->blockSignals(false); + { + const QSignalBlocker blocker(leftAction); + leftAction->setChecked(area == Qt::LeftDockWidgetArea); + } + { + const QSignalBlocker blocker(rightAction); + rightAction->setChecked(area == Qt::RightDockWidgetArea); + } + { + const QSignalBlocker blocker(topAction); + topAction->setChecked(area == Qt::TopDockWidgetArea); + } + { + const QSignalBlocker blocker(bottomAction); + bottomAction->setChecked(area == Qt::BottomDockWidgetArea); + } if (areaActions->isEnabled()) { leftAction->setEnabled(areas & Qt::LeftDockWidgetArea); diff --git a/examples/widgets/widgets/charactermap/mainwindow.cpp b/examples/widgets/widgets/charactermap/mainwindow.cpp index 160b77a945..2141850f16 100644 --- a/examples/widgets/widgets/charactermap/mainwindow.cpp +++ b/examples/widgets/widgets/charactermap/mainwindow.cpp @@ -167,25 +167,27 @@ void MainWindow::findSizes(const QFont &font) { QFontDatabase fontDatabase; QString currentSize = sizeCombo->currentText(); - sizeCombo->blockSignals(true); - sizeCombo->clear(); - - int size; - if(fontDatabase.isSmoothlyScalable(font.family(), fontDatabase.styleString(font))) { - foreach(size, QFontDatabase::standardSizes()) { - sizeCombo->addItem(QVariant(size).toString()); - sizeCombo->setEditable(true); - } - } else { - foreach(size, fontDatabase.smoothSizes(font.family(), fontDatabase.styleString(font))) { - sizeCombo->addItem(QVariant(size).toString()); - sizeCombo->setEditable(false); + { + const QSignalBlocker blocker(sizeCombo); + // sizeCombo signals are now blocked until end of scope + sizeCombo->clear(); + + int size; + if (fontDatabase.isSmoothlyScalable(font.family(), fontDatabase.styleString(font))) { + foreach (size, QFontDatabase::standardSizes()) { + sizeCombo->addItem(QVariant(size).toString()); + sizeCombo->setEditable(true); + } + + } else { + foreach (size, fontDatabase.smoothSizes(font.family(), fontDatabase.styleString(font))) { + sizeCombo->addItem(QVariant(size).toString()); + sizeCombo->setEditable(false); + } } } - sizeCombo->blockSignals(false); - int sizeIndex = sizeCombo->findText(currentSize); if(sizeIndex == -1) |