ui: Clear screen search matches when anything in the view changes (issue #660)
This commit is contained in:
@@ -147,3 +147,73 @@ size_t ScreenSearchController::getResponderId(ScreenSearchResponder* responder)
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
void ScreenSearchController::handleMessage(MessageActivateAll* message)
|
||||
{
|
||||
clearMatches();
|
||||
}
|
||||
|
||||
void ScreenSearchController::handleMessage(MessageActivateErrors* message)
|
||||
{
|
||||
clearMatches();
|
||||
}
|
||||
|
||||
void ScreenSearchController::handleMessage(MessageActivateFullTextSearch* message)
|
||||
{
|
||||
clearMatches();
|
||||
}
|
||||
|
||||
void ScreenSearchController::handleMessage(MessageActivateLegend* message)
|
||||
{
|
||||
clearMatches();
|
||||
}
|
||||
|
||||
void ScreenSearchController::handleMessage(MessageActivateLocalSymbols* message)
|
||||
{
|
||||
clearMatches();
|
||||
}
|
||||
|
||||
void ScreenSearchController::handleMessage(MessageActivateTokens* message)
|
||||
{
|
||||
clearMatches();
|
||||
}
|
||||
|
||||
void ScreenSearchController::handleMessage(MessageActivateTrail* message)
|
||||
{
|
||||
clearMatches();
|
||||
}
|
||||
|
||||
void ScreenSearchController::handleMessage(MessageActivateTrailEdge* message)
|
||||
{
|
||||
clearMatches();
|
||||
}
|
||||
|
||||
void ScreenSearchController::handleMessage(MessageChangeFileView* message)
|
||||
{
|
||||
clearMatches();
|
||||
}
|
||||
|
||||
void ScreenSearchController::handleMessage(MessageCodeShowDefinition* message)
|
||||
{
|
||||
clearMatches();
|
||||
}
|
||||
|
||||
void ScreenSearchController::handleMessage(MessageDeactivateEdge* message)
|
||||
{
|
||||
clearMatches();
|
||||
}
|
||||
|
||||
void ScreenSearchController::handleMessage(MessageGraphNodeBundleSplit* message)
|
||||
{
|
||||
clearMatches();
|
||||
}
|
||||
|
||||
void ScreenSearchController::handleMessage(MessageGraphNodeExpand* message)
|
||||
{
|
||||
clearMatches();
|
||||
}
|
||||
|
||||
void ScreenSearchController::handleMessage(MessageGraphNodeHide* message)
|
||||
{
|
||||
clearMatches();
|
||||
}
|
||||
|
||||
@@ -5,12 +5,40 @@
|
||||
#include <set>
|
||||
|
||||
#include "Controller.h"
|
||||
#include "ScreenSearchInterfaces.h"
|
||||
#include "MessageActivateAll.h"
|
||||
#include "MessageActivateErrors.h"
|
||||
#include "MessageActivateFullTextSearch.h"
|
||||
#include "MessageActivateLegend.h"
|
||||
#include "MessageActivateLocalSymbols.h"
|
||||
#include "MessageActivateTokens.h"
|
||||
#include "MessageActivateTrail.h"
|
||||
#include "MessageActivateTrailEdge.h"
|
||||
#include "MessageChangeFileView.h"
|
||||
#include "MessageCodeShowDefinition.h"
|
||||
#include "MessageDeactivateEdge.h"
|
||||
#include "MessageGraphNodeBundleSplit.h"
|
||||
#include "MessageGraphNodeExpand.h"
|
||||
#include "MessageGraphNodeHide.h"
|
||||
#include "MessageListener.h"
|
||||
#include "ScreenSearchInterfaces.h"
|
||||
|
||||
class ScreenSearchController
|
||||
: public Controller
|
||||
, public ScreenSearchSender
|
||||
, public MessageListener<MessageActivateAll>
|
||||
, public MessageListener<MessageActivateErrors>
|
||||
, public MessageListener<MessageActivateFullTextSearch>
|
||||
, public MessageListener<MessageActivateLegend>
|
||||
, public MessageListener<MessageActivateLocalSymbols>
|
||||
, public MessageListener<MessageActivateTokens>
|
||||
, public MessageListener<MessageActivateTrail>
|
||||
, public MessageListener<MessageActivateTrailEdge>
|
||||
, public MessageListener<MessageChangeFileView>
|
||||
, public MessageListener<MessageCodeShowDefinition>
|
||||
, public MessageListener<MessageDeactivateEdge>
|
||||
, public MessageListener<MessageGraphNodeBundleSplit>
|
||||
, public MessageListener<MessageGraphNodeExpand>
|
||||
, public MessageListener<MessageGraphNodeHide>
|
||||
{
|
||||
public:
|
||||
virtual ~ScreenSearchController() = default;
|
||||
@@ -30,6 +58,21 @@ public:
|
||||
private:
|
||||
size_t getResponderId(ScreenSearchResponder* responder) const;
|
||||
|
||||
void handleMessage(MessageActivateAll* message) override;
|
||||
void handleMessage(MessageActivateErrors* message) override;
|
||||
void handleMessage(MessageActivateFullTextSearch* message) override;
|
||||
void handleMessage(MessageActivateLegend* message) override;
|
||||
void handleMessage(MessageActivateLocalSymbols* message) override;
|
||||
void handleMessage(MessageActivateTokens* message) override;
|
||||
void handleMessage(MessageActivateTrail* message) override;
|
||||
void handleMessage(MessageActivateTrailEdge* message) override;
|
||||
void handleMessage(MessageChangeFileView* message) override;
|
||||
void handleMessage(MessageCodeShowDefinition* message) override;
|
||||
void handleMessage(MessageDeactivateEdge* message) override;
|
||||
void handleMessage(MessageGraphNodeBundleSplit* message) override;
|
||||
void handleMessage(MessageGraphNodeExpand* message) override;
|
||||
void handleMessage(MessageGraphNodeHide* message) override;
|
||||
|
||||
std::vector<ScreenSearchResponder*> m_responders;
|
||||
|
||||
std::vector<std::pair<size_t, size_t>> m_matches;
|
||||
|
||||
@@ -5,29 +5,29 @@
|
||||
|
||||
#include "MessageBase.h"
|
||||
#include "MessageListener.h"
|
||||
#include "MessageActivateLegend.h"
|
||||
#include "MessageCodeShowDefinition.h"
|
||||
#include "MessageActivateErrors.h"
|
||||
#include "MessageShowError.h"
|
||||
#include "MessageHistoryRedo.h"
|
||||
#include "MessageHistoryToPosition.h"
|
||||
#include "MessageHistoryUndo.h"
|
||||
#include "MessageIndexingFinished.h"
|
||||
#include "MessageActivateAll.h"
|
||||
#include "MessageActivateErrors.h"
|
||||
#include "MessageActivateFullTextSearch.h"
|
||||
#include "MessageActivateLegend.h"
|
||||
#include "MessageActivateLocalSymbols.h"
|
||||
#include "MessageActivateTokens.h"
|
||||
#include "MessageActivateTrail.h"
|
||||
#include "MessageActivateTrailEdge.h"
|
||||
#include "MessageChangeFileView.h"
|
||||
#include "MessageCodeShowDefinition.h"
|
||||
#include "MessageDeactivateEdge.h"
|
||||
#include "MessageGraphNodeBundleSplit.h"
|
||||
#include "MessageGraphNodeExpand.h"
|
||||
#include "MessageGraphNodeHide.h"
|
||||
#include "MessageGraphNodeMove.h"
|
||||
#include "MessageHistoryRedo.h"
|
||||
#include "MessageHistoryToPosition.h"
|
||||
#include "MessageHistoryUndo.h"
|
||||
#include "MessageIndexingFinished.h"
|
||||
#include "MessageRefreshUI.h"
|
||||
#include "MessageScrollCode.h"
|
||||
#include "MessageScrollGraph.h"
|
||||
#include "MessageShowError.h"
|
||||
#include "MessageShowReference.h"
|
||||
#include "MessageShowScope.h"
|
||||
|
||||
|
||||
Reference in New Issue
Block a user