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:
@@ -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();
|
||||
|
||||
Reference in New Issue
Block a user