logic: Made history menu use on Messages instead of SearchMatch

* Common base class MessageActivateBase for activation messages with getter for SearchMatches
* Removed duplicate logic for creating SearchMatches from Messages
* Fixed can't reactivate fulltext search from history menu
* Renamed history message and moved to sub directory
* Fixed activating node type filters didn't clear code view
This commit is contained in:
Eberhard Graether
2018-07-03 15:11:52 +02:00
parent 0519fd1462
commit c8a885be83
40 changed files with 427 additions and 472 deletions
+20 -19
View File
@@ -35,6 +35,7 @@ void CodeController::handleMessage(MessageActivateAll* message)
Project* currentProject = Application::getInstance()->getCurrentProject().get();
if (!currentProject || message->acceptedNodeTypes != NodeTypeSet::all())
{
clear();
return;
}
@@ -132,6 +133,25 @@ void CodeController::handleMessage(MessageActivateErrors* message)
showCodeSnippets(snippets, params, false);
}
void CodeController::handleMessage(MessageActivateFullTextSearch* message)
{
TRACE("code fulltext");
saveOrRestoreViewMode(message);
m_collection = m_storageAccess->getFullTextSearchLocations(message->searchTerm, message->caseSensitive);
CodeView::ScrollParams scrollParams(CodeView::ScrollParams::SCROLL_TO_DEFINITION);
getView()->scrollTo(scrollParams);
CodeView::CodeParams params;
params.clearSnippets = true;
params.showContents = !message->isReplayed();
params.useSingleFileCache = false;
showCodeSnippets(getSnippetsForCollection(m_collection), params);
}
void CodeController::handleMessage(MessageActivateLocalSymbols* message)
{
CodeView* view = getView();
@@ -326,25 +346,6 @@ void CodeController::handleMessage(MessageScrollCode* message)
}
}
void CodeController::handleMessage(MessageSearchFullText* message)
{
TRACE("code fulltext");
saveOrRestoreViewMode(message);
m_collection = m_storageAccess->getFullTextSearchLocations(message->searchTerm, message->caseSensitive);
CodeView::ScrollParams scrollParams(CodeView::ScrollParams::SCROLL_TO_DEFINITION);
getView()->scrollTo(scrollParams);
CodeView::CodeParams params;
params.clearSnippets = true;
params.showContents = !message->isReplayed();
params.useSingleFileCache = false;
showCodeSnippets(getSnippetsForCollection(m_collection), params);
}
void CodeController::handleMessage(MessageShowError* message)
{
CodeView* view = getView();