diff options
author | Marc Mutz <marc.mutz@kdab.com> | 2015-04-05 21:17:54 +0200 |
---|---|---|
committer | Marc Mutz <marc.mutz@kdab.com> | 2015-04-07 18:51:57 +0000 |
commit | bb7b20b4465754988c7696e407045975c0672030 (patch) | |
tree | abf32c8f6fe29fe41c53e5a8f62b47d80b489413 /src/widgets | |
parent | 3cb7a1b95727c9cfde9d26154bd19df24bccfbb3 (diff) |
QErrorMessage: avoid some code duplication
...by using the predicate from nextPending() in the two
showMessage() functions, too, which thus become identical,
when substituting type -> QString().
Also saves around 250B in text size.
Change-Id: Ibf5d081dbec3438b7b1be4e240879e26d0455d6b
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
Diffstat (limited to 'src/widgets')
-rw-r--r-- | src/widgets/dialogs/qerrormessage.cpp | 20 |
1 files changed, 11 insertions, 9 deletions
diff --git a/src/widgets/dialogs/qerrormessage.cpp b/src/widgets/dialogs/qerrormessage.cpp index 5c61b58b0f..fb393de6e5 100644 --- a/src/widgets/dialogs/qerrormessage.cpp +++ b/src/widgets/dialogs/qerrormessage.cpp @@ -75,6 +75,7 @@ public: QString currentMessage; QString currentType; + bool isMessageToBeShown(const QString &message, const QString &type) const; bool nextPending(); void retranslateStrings(); }; @@ -304,6 +305,12 @@ QErrorMessage * QErrorMessage::qtHandler() /*! \internal */ +bool QErrorMessagePrivate::isMessageToBeShown(const QString &message, const QString &type) const +{ + return !message.isEmpty() + && (type.isEmpty() ? !doNotShow.contains(message) : !doNotShowType.contains(type)); +} + bool QErrorMessagePrivate::nextPending() { while (!pending.empty()) { @@ -311,7 +318,7 @@ bool QErrorMessagePrivate::nextPending() QString message = qMove(pendingMessage.first); QString type = qMove(pendingMessage.second); pending.pop(); - if (!message.isEmpty() && ((type.isEmpty() && !doNotShow.contains(message)) || (!type.isEmpty() && !doNotShowType.contains(type)))) { + if (isMessageToBeShown(message, type)) { #ifndef QT_NO_TEXTHTMLPARSER errors->setHtml(message); #else @@ -337,12 +344,7 @@ bool QErrorMessagePrivate::nextPending() void QErrorMessage::showMessage(const QString &message) { - Q_D(QErrorMessage); - if (d->doNotShow.contains(message)) - return; - d->pending.push(qMakePair(message,QString())); - if (!isVisible() && d->nextPending()) - show(); + showMessage(message, QString()); } /*! @@ -362,9 +364,9 @@ void QErrorMessage::showMessage(const QString &message) void QErrorMessage::showMessage(const QString &message, const QString &type) { Q_D(QErrorMessage); - if (d->doNotShow.contains(message) && d->doNotShowType.contains(type)) + if (!d->isMessageToBeShown(message, type)) return; - d->pending.push(qMakePair(message,type)); + d->pending.push(qMakePair(message, type)); if (!isVisible() && d->nextPending()) show(); } |