CppTools: Do not pre-select "external" files in "rename symbol" widget

It's unlikely that the user wants to change files that are not part of
the currently loaded projects, so opt-in is the right approach for
those.

Fixes: QTCREATORBUG-8561
Change-Id: I1812a3e64de66828ac07dea7bbb63acdb4dd40d8
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
This commit is contained in:
Christian Kandeler
2021-02-11 16:54:36 +01:00
parent 69a2204eb8
commit e51b2a28ea
8 changed files with 55 additions and 27 deletions

View File

@@ -37,6 +37,7 @@
#include <projectexplorer/projectexplorer.h>
#include <projectexplorer/projectnodes.h>
#include <projectexplorer/projecttree.h>
#include <projectexplorer/session.h>
#include <texteditor/basefilefind.h>
#include <utils/algorithm.h>
@@ -637,6 +638,8 @@ static void displayResults(SearchResult *search, QFutureWatcher<CPlusPlus::Usage
item.setUserData(int(result.type));
item.setStyle(colorStyleForUsageType(result.type));
item.setUseTextEditorFont(true);
if (search->supportsReplace())
item.setSelectForReplacement(SessionManager::projectForFile(result.path));
search->addResult(item);
if (parameters.prettySymbolName.isEmpty())
@@ -829,10 +832,13 @@ void CppFindReferences::findMacroUses(const CPlusPlus::Macro &macro, const QStri
const QString line = FindMacroUsesInFile::matchingLine(macro.bytesOffset(), source,
&column);
SearchResultItem item;
item.setFilePath(Utils::FilePath::fromString(macro.fileName()));
const Utils::FilePath filePath = Utils::FilePath::fromString(macro.fileName());
item.setFilePath(filePath);
item.setLineText(line);
item.setMainRange(macro.line(), column, macro.nameToQString().length());
item.setUseTextEditorFont(true);
if (search->supportsReplace())
item.setSelectForReplacement(SessionManager::projectForFile(filePath));
search->addResult(item);
}