diff --git a/src/libs/utils/fadingindicator.cpp b/src/libs/utils/fadingindicator.cpp index bfef6771856..aae0600be08 100644 --- a/src/libs/utils/fadingindicator.cpp +++ b/src/libs/utils/fadingindicator.cpp @@ -48,7 +48,7 @@ class FadingIndicatorPrivate : public QWidget Q_OBJECT public: - FadingIndicatorPrivate(QWidget *parent = 0) + FadingIndicatorPrivate(QWidget *parent, FadingIndicator::TextSize size) : QWidget(parent) { m_effect = new QGraphicsOpacityEffect(this); @@ -57,7 +57,7 @@ public: m_label = new QLabel; QFont font = m_label->font(); - font.setPixelSize(45); + font.setPixelSize(size == FadingIndicator::LargeText ? 45 : 22); m_label->setFont(font); QPalette pal = palette(); pal.setColor(QPalette::Foreground, pal.color(QPalette::Background)); @@ -126,16 +126,16 @@ private: namespace FadingIndicator { -void showText(QWidget *parent, const QString &text) +void showText(QWidget *parent, const QString &text, TextSize size) { - auto indicator = new Internal::FadingIndicatorPrivate(parent); + auto indicator = new Internal::FadingIndicatorPrivate(parent, size); indicator->setText(text); - indicator->run(1000); // deletes itself + indicator->run(2500); // deletes itself } void showPixmap(QWidget *parent, const QString &pixmap) { - auto indicator = new Internal::FadingIndicatorPrivate(parent); + auto indicator = new Internal::FadingIndicatorPrivate(parent, LargeText); indicator->setPixmap(pixmap); indicator->run(300); // deletes itself } diff --git a/src/libs/utils/fadingindicator.h b/src/libs/utils/fadingindicator.h index 7738e751a64..3266feb66ad 100644 --- a/src/libs/utils/fadingindicator.h +++ b/src/libs/utils/fadingindicator.h @@ -40,7 +40,13 @@ namespace Utils { namespace FadingIndicator { -QTCREATOR_UTILS_EXPORT void showText(QWidget *parent, const QString &text); +enum TextSize { + SmallText, + LargeText +}; + +QTCREATOR_UTILS_EXPORT void showText(QWidget *parent, const QString &text, + TextSize size = LargeText); QTCREATOR_UTILS_EXPORT void showPixmap(QWidget *parent, const QString &pixmap); } // FadingIndicator diff --git a/src/plugins/coreplugin/find/currentdocumentfind.cpp b/src/plugins/coreplugin/find/currentdocumentfind.cpp index dea2b315815..a08ee98f8c4 100644 --- a/src/plugins/coreplugin/find/currentdocumentfind.cpp +++ b/src/plugins/coreplugin/find/currentdocumentfind.cpp @@ -32,6 +32,8 @@ #include #include + +#include #include #include @@ -134,7 +136,12 @@ bool CurrentDocumentFind::replaceStep(const QString &before, const QString &afte int CurrentDocumentFind::replaceAll(const QString &before, const QString &after, FindFlags findFlags) { QTC_ASSERT(m_currentFind, return 0); - return m_currentFind->replaceAll(before, after, findFlags); + QTC_CHECK(m_currentWidget); + int count = m_currentFind->replaceAll(before, after, findFlags); + Utils::FadingIndicator::showText(m_currentWidget, + tr("%1 occurrences replaced.").arg(count), + Utils::FadingIndicator::SmallText); + return count; } void CurrentDocumentFind::defineFindScope() diff --git a/src/plugins/texteditor/basefilefind.cpp b/src/plugins/texteditor/basefilefind.cpp index 9e00297faf5..49bf4f4b913 100644 --- a/src/plugins/texteditor/basefilefind.cpp +++ b/src/plugins/texteditor/basefilefind.cpp @@ -42,9 +42,10 @@ #include #include #include -#include -#include +#include #include +#include +#include #include #include @@ -208,6 +209,9 @@ void BaseFileFind::doReplace(const QString &text, { QStringList files = replaceAll(text, items, preserveCase); if (!files.isEmpty()) { + Utils::FadingIndicator::showText(ICore::mainWindow(), + tr("%1 occurrences replaced.").arg(items.size()), + Utils::FadingIndicator::SmallText); DocumentManager::notifyFilesChangedInternally(files); SearchResultWindow::instance()->hide(); }