summaryrefslogtreecommitdiff
path: root/src/plugins/cpptools/cppfindreferences.cpp
diff options
context:
space:
mode:
authorFrancois Ferrand <thetypz@gmail.com>2012-11-30 16:15:07 +0100
committerEike Ziller <eike.ziller@digia.com>2012-12-14 10:22:41 +0100
commit058d2e8cb54d1f5e5c409182ae72fbbd1c96c3cc (patch)
treec5119a151f0c0ee0eb21b17f0ff07cc9dd1f5e01 /src/plugins/cpptools/cppfindreferences.cpp
parenta8a33b9a3b2bab7660a53919bfbfa011e31755d3 (diff)
downloadqt-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.cpp9
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();