summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMarc Mutz <marc.mutz@kdab.com>2013-10-26 11:07:46 +0200
committerThe Qt Project <gerrit-noreply@qt-project.org>2013-10-30 12:58:44 +0100
commit94fd108ea42a99dacefa819bc3fd4363fb95e886 (patch)
treee40634e096ca232addae6e0d26ae6a768e32bdfe
parenta6f0f07782602ece7602f0c2d859ecfe9f3d97a0 (diff)
QPlainTextEdit: use QSignalBlocker
Change-Id: I581e60c4efd985fb909614459229806185f9501c Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
-rw-r--r--src/widgets/widgets/qplaintextedit.cpp22
1 files changed, 13 insertions, 9 deletions
diff --git a/src/widgets/widgets/qplaintextedit.cpp b/src/widgets/widgets/qplaintextedit.cpp
index 90f2e47cd3..df86d141b4 100644
--- a/src/widgets/widgets/qplaintextedit.cpp
+++ b/src/widgets/widgets/qplaintextedit.cpp
@@ -639,9 +639,10 @@ void QPlainTextEditPrivate::setTopBlock(int blockNumber, int lineNumber, int dx)
lineNumber = maxTopLine - block.firstLineNumber();
}
- bool vbarSignalsBlocked = vbar->blockSignals(true);
- vbar->setValue(newTopLine);
- vbar->blockSignals(vbarSignalsBlocked);
+ {
+ const QSignalBlocker blocker(vbar);
+ vbar->setValue(newTopLine);
+ }
if (!dx && blockNumber == control->topBlock && lineNumber == topLine)
return;
@@ -657,9 +658,10 @@ void QPlainTextEditPrivate::setTopBlock(int blockNumber, int lineNumber, int dx)
control->topBlock = blockNumber;
topLine = lineNumber;
- bool vbarSignalsBlocked = vbar->blockSignals(true);
- vbar->setValue(block.firstLineNumber() + lineNumber);
- vbar->blockSignals(vbarSignalsBlocked);
+ {
+ const QSignalBlocker blocker(vbar);
+ vbar->setValue(block.firstLineNumber() + lineNumber);
+ }
if (dx || dy) {
viewport->scroll(q->isRightToLeft() ? -dx : dx, dy);
@@ -1006,9 +1008,11 @@ void QPlainTextEditPrivate::_q_adjustScrollbars()
QTextBlock firstVisibleBlock = q->firstVisibleBlock();
if (firstVisibleBlock.isValid())
visualTopLine = firstVisibleBlock.firstLineNumber() + topLine;
- bool vbarSignalsBlocked = vbar->blockSignals(true);
- vbar->setValue(visualTopLine);
- vbar->blockSignals(vbarSignalsBlocked);
+
+ {
+ const QSignalBlocker blocker(vbar);
+ vbar->setValue(visualTopLine);
+ }
hbar->setRange(0, (int)documentSize.width() - viewport->width());
hbar->setPageStep(viewport->width());