ui: Clearing error count when parsing starts
* fixed undo showed errors twice when activated from status bar.
This commit is contained in:
@@ -221,6 +221,7 @@ add_files(
|
||||
utility/messaging/type/MessageActivateWindow.h
|
||||
utility/messaging/type/MessageAutoRefreshChanged.h
|
||||
utility/messaging/type/MessageChangeFileView.h
|
||||
utility/messaging/type/MessageClearErrorCount.h
|
||||
utility/messaging/type/MessageDeactivateEdge.h
|
||||
utility/messaging/type/MessageFind.h
|
||||
utility/messaging/type/MessageFinishedParsing.h
|
||||
|
||||
@@ -17,6 +17,16 @@ StatusBarView* StatusBarController::getView()
|
||||
return Controller::getView<StatusBarView>();
|
||||
}
|
||||
|
||||
void StatusBarController::handleMessage(MessageClearErrorCount* message)
|
||||
{
|
||||
getView()->setErrorCount(0);
|
||||
}
|
||||
|
||||
void StatusBarController::handleMessage(MessageFinishedParsing* message)
|
||||
{
|
||||
getView()->setErrorCount(message->errorCount);
|
||||
}
|
||||
|
||||
void StatusBarController::handleMessage(MessageShowErrors* message)
|
||||
{
|
||||
if (message->errorCount >= 0)
|
||||
|
||||
@@ -6,6 +6,8 @@
|
||||
#include "component/controller/Controller.h"
|
||||
|
||||
#include "utility/messaging/MessageListener.h"
|
||||
#include "utility/messaging/type/MessageClearErrorCount.h"
|
||||
#include "utility/messaging/type/MessageFinishedParsing.h"
|
||||
#include "utility/messaging/type/MessageShowErrors.h"
|
||||
#include "utility/messaging/type/MessageStatus.h"
|
||||
|
||||
@@ -13,6 +15,8 @@ class StatusBarView;
|
||||
|
||||
class StatusBarController
|
||||
: public Controller
|
||||
, public MessageListener<MessageClearErrorCount>
|
||||
, public MessageListener<MessageFinishedParsing>
|
||||
, public MessageListener<MessageShowErrors>
|
||||
, public MessageListener<MessageStatus>
|
||||
{
|
||||
@@ -23,6 +27,8 @@ public:
|
||||
StatusBarView* getView();
|
||||
|
||||
private:
|
||||
virtual void handleMessage(MessageClearErrorCount* message);
|
||||
virtual void handleMessage(MessageFinishedParsing* message);
|
||||
virtual void handleMessage(MessageShowErrors* message);
|
||||
virtual void handleMessage(MessageStatus* message);
|
||||
|
||||
|
||||
@@ -200,17 +200,6 @@ void UndoRedoController::handleMessage(MessageSearch* message)
|
||||
processCommand(command);
|
||||
}
|
||||
|
||||
void UndoRedoController::handleMessage(MessageShowErrors* message)
|
||||
{
|
||||
if (m_lastCommand.message && m_lastCommand.message->getType() == message->getType())
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
Command command(std::make_shared<MessageShowErrors>(*message), 0);
|
||||
processCommand(command);
|
||||
}
|
||||
|
||||
void UndoRedoController::handleMessage(MessageShowScope* message)
|
||||
{
|
||||
Command command(std::make_shared<MessageShowScope>(*message), 1);
|
||||
|
||||
@@ -18,7 +18,6 @@
|
||||
#include "utility/messaging/type/MessageRedo.h"
|
||||
#include "utility/messaging/type/MessageRefresh.h"
|
||||
#include "utility/messaging/type/MessageSearch.h"
|
||||
#include "utility/messaging/type/MessageShowErrors.h"
|
||||
#include "utility/messaging/type/MessageShowScope.h"
|
||||
#include "utility/messaging/type/MessageUndo.h"
|
||||
|
||||
@@ -43,7 +42,6 @@ class UndoRedoController
|
||||
, public MessageListener<MessageRedo>
|
||||
, public MessageListener<MessageRefresh>
|
||||
, public MessageListener<MessageSearch>
|
||||
, public MessageListener<MessageShowErrors>
|
||||
, public MessageListener<MessageShowScope>
|
||||
, public MessageListener<MessageUndo>
|
||||
{
|
||||
@@ -75,7 +73,6 @@ private:
|
||||
virtual void handleMessage(MessageRedo* message);
|
||||
virtual void handleMessage(MessageRefresh* message);
|
||||
virtual void handleMessage(MessageSearch* message);
|
||||
virtual void handleMessage(MessageShowErrors* message);
|
||||
virtual void handleMessage(MessageShowScope* message);
|
||||
virtual void handleMessage(MessageUndo* message);
|
||||
|
||||
|
||||
@@ -5,6 +5,7 @@
|
||||
|
||||
#include "utility/file/FileSystem.h"
|
||||
#include "utility/logging/logging.h"
|
||||
#include "utility/messaging/type/MessageClearErrorCount.h"
|
||||
#include "utility/messaging/type/MessageShowErrors.h"
|
||||
#include "utility/TimePoint.h"
|
||||
#include "utility/utility.h"
|
||||
@@ -165,9 +166,7 @@ void Storage::logStats() const
|
||||
|
||||
void Storage::startParsing()
|
||||
{
|
||||
MessageShowErrors msg(getErrorCount());
|
||||
msg.setSendAsTask(false);
|
||||
msg.dispatch();
|
||||
MessageClearErrorCount().dispatch();
|
||||
|
||||
m_sqliteStorage.setVersion(Version::getApplicationVersion());
|
||||
}
|
||||
|
||||
@@ -0,0 +1,21 @@
|
||||
#ifndef MESSAGE_CLEAR_ERROR_COUNT_H
|
||||
#define MESSAGE_CLEAR_ERROR_COUNT_H
|
||||
|
||||
#include "utility/messaging/Message.h"
|
||||
|
||||
class MessageClearErrorCount
|
||||
: public Message<MessageClearErrorCount>
|
||||
{
|
||||
public:
|
||||
MessageClearErrorCount()
|
||||
{
|
||||
setSendAsTask(false);
|
||||
}
|
||||
|
||||
static const std::string getStaticType()
|
||||
{
|
||||
return "MessageClearErrorCount";
|
||||
}
|
||||
};
|
||||
|
||||
#endif // MESSAGE_CLEAR_ERROR_COUNT_H
|
||||
@@ -3,7 +3,7 @@
|
||||
#include <QMovie>
|
||||
|
||||
#include "qt/utility/utilityQt.h"
|
||||
#include "utility/messaging/type/MessageShowErrors.h"
|
||||
#include "utility/messaging/type/MessageSearch.h"
|
||||
#include "utility/ResourcePaths.h"
|
||||
|
||||
QtStatusBar::QtStatusBar()
|
||||
@@ -78,5 +78,6 @@ void QtStatusBar::setErrorCount(size_t count)
|
||||
|
||||
void QtStatusBar::showErrors()
|
||||
{
|
||||
MessageShowErrors(-1).dispatch();
|
||||
SearchMatch match = SearchMatch::createCommand(SearchMatch::COMMAND_ERROR);
|
||||
MessageSearch(std::vector<SearchMatch>(1, match)).dispatch();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user