diff options
author | Francois Ferrand <thetypz@gmail.com> | 2012-11-30 16:15:07 +0100 |
---|---|---|
committer | Eike Ziller <eike.ziller@digia.com> | 2012-12-14 10:22:41 +0100 |
commit | 058d2e8cb54d1f5e5c409182ae72fbbd1c96c3cc (patch) | |
tree | c5119a151f0c0ee0eb21b17f0ff07cc9dd1f5e01 /src/plugins/cpptools/cppfindreferences.cpp | |
parent | a8a33b9a3b2bab7660a53919bfbfa011e31755d3 (diff) | |
download | qt-creator-058d2e8cb54d1f5e5c409182ae72fbbd1c96c3cc.tar.gz |
Support preserving case when replacing.
When making a case insensitive search, try to keep the string capitalization when doing
the replace:
- All upper-case matches are replaced with the upper-case new text.
- All lower-case matches are replaced with the lower-case new text.
- Capitalized matches are replace with the capitalized new text.
- Other matches are replaced with the new text as provided.
Note: this does not work with regexp replace, only plain text.
Change-Id: I87cbc28eb64688bdf3c8c6ec173fcb22f91abcd0
Reviewed-by: Cristian Tibirna <tibirna@kde.org>
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@digia.com>
Reviewed-by: Eike Ziller <eike.ziller@digia.com>
Diffstat (limited to 'src/plugins/cpptools/cppfindreferences.cpp')
-rw-r--r-- | src/plugins/cpptools/cppfindreferences.cpp | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/src/plugins/cpptools/cppfindreferences.cpp b/src/plugins/cpptools/cppfindreferences.cpp index 173ed20222..c782f1a5ed 100644 --- a/src/plugins/cpptools/cppfindreferences.cpp +++ b/src/plugins/cpptools/cppfindreferences.cpp @@ -255,8 +255,8 @@ void CppFindReferences::findUsages(CPlusPlus::Symbol *symbol, : Find::SearchResultWindow::SearchOnly, QLatin1String("CppEditor")); search->setTextToReplace(replacement); - connect(search, SIGNAL(replaceButtonClicked(QString,QList<Find::SearchResultItem>)), - SLOT(onReplaceButtonClicked(QString,QList<Find::SearchResultItem>))); + connect(search, SIGNAL(replaceButtonClicked(QString,QList<Find::SearchResultItem>,bool)), + SLOT(onReplaceButtonClicked(QString,QList<Find::SearchResultItem>,bool))); connect(search, SIGNAL(paused(bool)), this, SLOT(setPaused(bool))); search->setSearchAgainSupported(true); connect(search, SIGNAL(searchAgainRequested()), this, SLOT(searchAgain())); @@ -303,9 +303,10 @@ void CppFindReferences::findAll_helper(Find::SearchResult *search) } void CppFindReferences::onReplaceButtonClicked(const QString &text, - const QList<Find::SearchResultItem> &items) + const QList<Find::SearchResultItem> &items, + bool preserveCase) { - const QStringList fileNames = TextEditor::BaseFileFind::replaceAll(text, items); + const QStringList fileNames = TextEditor::BaseFileFind::replaceAll(text, items, preserveCase); if (!fileNames.isEmpty()) { _modelManager->updateSourceFiles(fileNames); Find::SearchResultWindow::instance()->hide(); |