Clang: Extend clang query

It's a first step to introduce clang query.

Change-Id: I4d001a8883f56066765ce6bc561fa3f49611c0a4
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
This commit is contained in:
Tim Jenssen
2016-11-23 13:13:38 +01:00
parent 52fc4a4ebd
commit 7f757884c5
70 changed files with 1921 additions and 653 deletions

View File

@@ -27,6 +27,10 @@
#include "qtcreatorsearchhandle.h"
#include <coreplugin/editormanager/editormanager.h>
#include <QDir>
namespace ClangRefactoring {
QtCreatorSearch::QtCreatorSearch(Core::SearchResultWindow &searchResultWindow)
@@ -34,7 +38,7 @@ QtCreatorSearch::QtCreatorSearch(Core::SearchResultWindow &searchResultWindow)
{
}
std::unique_ptr<SearchHandleInterface> QtCreatorSearch::startNewSearch(const QString &searchLabel,
std::unique_ptr<SearchHandle> QtCreatorSearch::startNewSearch(const QString &searchLabel,
const QString &searchTerm)
{
Core::SearchResult *searchResult = searchResultWindow.startNewSearch(
@@ -44,7 +48,24 @@ std::unique_ptr<SearchHandleInterface> QtCreatorSearch::startNewSearch(const QSt
Core::SearchResultWindow::SearchOnly,
Core::SearchResultWindow::PreserveCaseEnabled);
return std::unique_ptr<SearchHandleInterface>(new QtCreatorSearchHandle(searchResult));
QObject::connect(searchResult,
&Core::SearchResult::activated,
&QtCreatorSearch::openEditor);
auto searchHandle = std::unique_ptr<SearchHandle>(new QtCreatorSearchHandle(searchResult));
QObject::connect(searchResult,
&Core::SearchResult::cancelled,
[handle=searchHandle.get()] () { handle->cancel(); });
return searchHandle;
}
void QtCreatorSearch::openEditor(const Core::SearchResultItem &item)
{
Core::EditorManager::openEditorAt(QDir::fromNativeSeparators(item.path.first()),
item.mainRange.begin.line,
item.mainRange.begin.column);
}
} // namespace ClangRefactoring