diff --git a/src/lib/Application.cpp b/src/lib/Application.cpp index cb168410..3ce07a55 100644 --- a/src/lib/Application.cpp +++ b/src/lib/Application.cpp @@ -220,7 +220,7 @@ void Application::handleMessage(MessageIndexingFinished* message) if (m_hasGUI) { - MessageRefresh().refreshUiOnly().dispatch(); + MessageRefreshUI().dispatch(); } else { @@ -313,7 +313,14 @@ void Application::handleMessage(MessageRefresh* message) { TRACE("app refresh"); - if (m_hasGUI && message->uiOnly) + refreshProject(message->all ? REFRESH_ALL_FILES : REFRESH_UPDATED_FILES); +} + +void Application::handleMessage(MessageRefreshUI* message) +{ + TRACE("ui refresh"); + + if (m_hasGUI) { if (message->loadStyle) { @@ -323,11 +330,6 @@ void Application::handleMessage(MessageRefresh* message) m_mainView->refreshView(); m_componentManager->refreshViews(); } - - if (!message->uiOnly) - { - refreshProject(message->all ? REFRESH_ALL_FILES : REFRESH_UPDATED_FILES); - } } void Application::handleMessage(MessageSwitchColorScheme* message) @@ -335,7 +337,7 @@ void Application::handleMessage(MessageSwitchColorScheme* message) MessageStatus(L"Switch color scheme: " + message->colorSchemePath.wstr()).dispatch(); loadStyle(message->colorSchemePath); - MessageRefresh().refreshUiOnly().noReloadStyle().dispatch(); + MessageRefreshUI().noStyleReload().dispatch(); } void Application::handleMessage(MessageWindowFocus* message) diff --git a/src/lib/Application.h b/src/lib/Application.h index c85aae2c..6ad82df3 100644 --- a/src/lib/Application.h +++ b/src/lib/Application.h @@ -11,6 +11,7 @@ #include "MessageEnteredLicense.h" #include "MessageLoadProject.h" #include "MessageRefresh.h" +#include "MessageRefreshUI.h" #include "MessageSwitchColorScheme.h" #include "MessageWindowFocus.h" @@ -30,6 +31,7 @@ class Application , public MessageListener , public MessageListener , public MessageListener + , public MessageListener , public MessageListener , public MessageListener { @@ -62,15 +64,16 @@ private: static std::shared_ptr s_instance; static std::string s_uuid; - Application(bool withGUI=true); + Application(bool withGUI = true); - virtual void handleMessage(MessageActivateWindow* message); - virtual void handleMessage(MessageEnteredLicense* message); - virtual void handleMessage(MessageIndexingFinished* message); - virtual void handleMessage(MessageLoadProject* message); - virtual void handleMessage(MessageRefresh* message); - virtual void handleMessage(MessageSwitchColorScheme* message); - virtual void handleMessage(MessageWindowFocus* message); + void handleMessage(MessageActivateWindow* message) override; + void handleMessage(MessageEnteredLicense* message) override; + void handleMessage(MessageIndexingFinished* message) override; + void handleMessage(MessageLoadProject* message) override; + void handleMessage(MessageRefresh* message) override; + void handleMessage(MessageRefreshUI* message) override; + void handleMessage(MessageSwitchColorScheme* message) override; + void handleMessage(MessageWindowFocus* message) override; FilePath migrateProjectSettings(const FilePath& projectSettingsFilePath) const; void startMessagingAndScheduling(); diff --git a/src/lib/CMakeLists.txt b/src/lib/CMakeLists.txt index 3a1b4689..956d7e46 100644 --- a/src/lib/CMakeLists.txt +++ b/src/lib/CMakeLists.txt @@ -485,6 +485,7 @@ add_files( utility/messaging/type/MessageProjectNew.h utility/messaging/type/MessageQuitApplication.h utility/messaging/type/MessageRefresh.h + utility/messaging/type/MessageRefreshUI.h utility/messaging/type/MessageResetZoom.h utility/messaging/type/MessageScrollCode.h utility/messaging/type/MessageScrollGraph.h diff --git a/src/lib/component/controller/ActivationController.cpp b/src/lib/component/controller/ActivationController.cpp index fb15010c..5cc8aa7f 100644 --- a/src/lib/component/controller/ActivationController.cpp +++ b/src/lib/component/controller/ActivationController.cpp @@ -9,7 +9,7 @@ #include "MessageActivateTokens.h" #include "MessageChangeFileView.h" #include "MessageFlushUpdates.h" -#include "MessageRefresh.h" +#include "MessageRefreshUI.h" #include "MessageStatus.h" #include "MessageScrollToLine.h" #include "utility.h" @@ -123,10 +123,9 @@ void ActivationController::handleMessage(MessageResetZoom* message) settings->setFontSize(fontSizeStd); settings->save(); - MessageRefresh().refreshUiOnly().dispatch(); + MessageRefreshUI().dispatch(); } - MessageStatus(L"Font size: " + std::to_wstring(fontSizeStd)).dispatch(); } @@ -192,6 +191,5 @@ void ActivationController::handleMessage(MessageZoom* message) settings->save(); MessageStatus(L"Font size: " + std::to_wstring(settings->getFontSize())).dispatch(); - MessageRefresh().refreshUiOnly().dispatch(); + MessageRefreshUI().dispatch(); } - diff --git a/src/lib/component/controller/StatusBarController.cpp b/src/lib/component/controller/StatusBarController.cpp index 8a00a715..b06c6571 100644 --- a/src/lib/component/controller/StatusBarController.cpp +++ b/src/lib/component/controller/StatusBarController.cpp @@ -71,11 +71,6 @@ void StatusBarController::handleMessage(MessagePingReceived* message) void StatusBarController::handleMessage(MessageRefresh* message) { - if (message->uiOnly) - { - return; - } - getView()->setErrorCount(m_storageAccess->getErrorCount()); } diff --git a/src/lib/component/controller/StatusBarController.h b/src/lib/component/controller/StatusBarController.h index 3966e9bc..86deee26 100644 --- a/src/lib/component/controller/StatusBarController.h +++ b/src/lib/component/controller/StatusBarController.h @@ -35,17 +35,17 @@ public: StatusBarView* getView(); - virtual void clear(); + void clear() override; private: - virtual void handleMessage(MessageErrorCountClear* message); - virtual void handleMessage(MessageErrorCountUpdate* message); - virtual void handleMessage(MessageIndexingFinished* message); - virtual void handleMessage(MessageIndexingStarted* message); - virtual void handleMessage(MessageIndexingStatus* message); - virtual void handleMessage(MessagePingReceived* message); - virtual void handleMessage(MessageRefresh* message); - virtual void handleMessage(MessageStatus* message); + void handleMessage(MessageErrorCountClear* message) override; + void handleMessage(MessageErrorCountUpdate* message) override; + void handleMessage(MessageIndexingFinished* message) override; + void handleMessage(MessageIndexingStarted* message) override; + void handleMessage(MessageIndexingStatus* message) override; + void handleMessage(MessagePingReceived* message) override; + void handleMessage(MessageRefresh* message) override; + void handleMessage(MessageStatus* message) override; void setStatus(const std::wstring& status, bool isError, bool showLoader); diff --git a/src/lib/component/controller/UndoRedoController.cpp b/src/lib/component/controller/UndoRedoController.cpp index 5ec435da..d89ee8c8 100644 --- a/src/lib/component/controller/UndoRedoController.cpp +++ b/src/lib/component/controller/UndoRedoController.cpp @@ -355,13 +355,8 @@ void UndoRedoController::handleMessage(MessageIndexingFinished* message) m_iterator = m_list.end(); } -void UndoRedoController::handleMessage(MessageRefresh* message) +void UndoRedoController::handleMessage(MessageRefreshUI* message) { - if (!message->uiOnly) - { - return; - } - if (m_iterator == m_list.begin()) { MessageActivateAll().dispatch(); diff --git a/src/lib/component/controller/UndoRedoController.h b/src/lib/component/controller/UndoRedoController.h index d6e962ab..ea7bae6b 100644 --- a/src/lib/component/controller/UndoRedoController.h +++ b/src/lib/component/controller/UndoRedoController.h @@ -25,7 +25,7 @@ #include "MessageGraphNodeExpand.h" #include "MessageGraphNodeHide.h" #include "MessageGraphNodeMove.h" -#include "MessageRefresh.h" +#include "MessageRefreshUI.h" #include "MessageScrollCode.h" #include "MessageScrollGraph.h" #include "MessageShowReference.h" @@ -57,7 +57,7 @@ class UndoRedoController , public MessageListener , public MessageListener , public MessageListener - , public MessageListener + , public MessageListener , public MessageListener , public MessageListener , public MessageListener @@ -70,7 +70,7 @@ public: UndoRedoView* getView(); - virtual void clear(); + void clear() override; private: struct Command @@ -89,31 +89,31 @@ private: bool replayLastOnly; }; - virtual void handleMessage(MessageActivateAll* message); - virtual void handleMessage(MessageActivateErrors* message); - virtual void handleMessage(MessageActivateFullTextSearch* message); - virtual void handleMessage(MessageActivateLegend* message); - virtual void handleMessage(MessageActivateLocalSymbols* message); - virtual void handleMessage(MessageActivateTokens* message); - virtual void handleMessage(MessageActivateTrail* message); - virtual void handleMessage(MessageActivateTrailEdge* message); - virtual void handleMessage(MessageChangeFileView* message); - virtual void handleMessage(MessageCodeShowDefinition* message); - virtual void handleMessage(MessageDeactivateEdge* message); - virtual void handleMessage(MessageGraphNodeBundleSplit* message); - virtual void handleMessage(MessageGraphNodeExpand* message); - virtual void handleMessage(MessageGraphNodeHide* message); - virtual void handleMessage(MessageGraphNodeMove* message); - virtual void handleMessage(MessageHistoryRedo* message); - virtual void handleMessage(MessageHistoryToPosition* message); - virtual void handleMessage(MessageHistoryUndo* message); - virtual void handleMessage(MessageIndexingFinished* message); - virtual void handleMessage(MessageRefresh* message); - virtual void handleMessage(MessageScrollCode* message); - virtual void handleMessage(MessageScrollGraph* message); - virtual void handleMessage(MessageShowError* message); - virtual void handleMessage(MessageShowReference* message); - virtual void handleMessage(MessageShowScope* message); + 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; + void handleMessage(MessageGraphNodeMove* message) override; + void handleMessage(MessageHistoryRedo* message) override; + void handleMessage(MessageHistoryToPosition* message) override; + void handleMessage(MessageHistoryUndo* message) override; + void handleMessage(MessageIndexingFinished* message) override; + void handleMessage(MessageRefreshUI* message) override; + void handleMessage(MessageScrollCode* message) override; + void handleMessage(MessageScrollGraph* message) override; + void handleMessage(MessageShowError* message) override; + void handleMessage(MessageShowReference* message) override; + void handleMessage(MessageShowScope* message) override; void replayCommands(); void replayCommands(std::list::iterator it); diff --git a/src/lib/utility/messaging/type/MessageRefresh.h b/src/lib/utility/messaging/type/MessageRefresh.h index 0add3731..705790a4 100644 --- a/src/lib/utility/messaging/type/MessageRefresh.h +++ b/src/lib/utility/messaging/type/MessageRefresh.h @@ -7,22 +7,14 @@ class MessageRefresh : public Message { public: - MessageRefresh() - : uiOnly(false) - , all(false) - , loadStyle(true) - { - } - static const std::string getStaticType() { return "MessageRefresh"; } - MessageRefresh& refreshUiOnly() + MessageRefresh() + : all(false) { - uiOnly = true; - return *this; } MessageRefresh& refreshAll() @@ -31,28 +23,15 @@ public: return *this; } - MessageRefresh& noReloadStyle() + void print(std::wostream& os) const override { - loadStyle = false; - return *this; - } - - virtual void print(std::wostream& os) const - { - if (uiOnly) - { - os << "ui "; - } if (all) { os << "all"; } } - bool uiOnly; bool all; - - bool loadStyle; }; #endif // MESSAGE_REFRESH_H diff --git a/src/lib/utility/messaging/type/MessageRefreshUI.h b/src/lib/utility/messaging/type/MessageRefreshUI.h new file mode 100644 index 00000000..399031a8 --- /dev/null +++ b/src/lib/utility/messaging/type/MessageRefreshUI.h @@ -0,0 +1,37 @@ +#ifndef MESSAGE_REFRESH_UI_H +#define MESSAGE_REFRESH_UI_H + +#include "Message.h" + +class MessageRefreshUI + : public Message +{ +public: + static const std::string getStaticType() + { + return "MessageRefreshUI"; + } + + MessageRefreshUI() + : loadStyle(true) + { + } + + MessageRefreshUI& noStyleReload() + { + loadStyle = false; + return *this; + } + + void print(std::wostream& os) const override + { + if (loadStyle) + { + os << "reload style"; + } + } + + bool loadStyle; +}; + +#endif // MESSAGE_REFRESH_UI_H diff --git a/src/lib_gui/qt/element/QtIconButton.cpp b/src/lib_gui/qt/element/QtIconButton.cpp index aacb382c..3fa79062 100644 --- a/src/lib_gui/qt/element/QtIconButton.cpp +++ b/src/lib_gui/qt/element/QtIconButton.cpp @@ -102,15 +102,12 @@ void QtSelfRefreshIconButton::setIconPath(const FilePath& iconPath) } } -void QtSelfRefreshIconButton::handleMessage(MessageRefresh* message) +void QtSelfRefreshIconButton::handleMessage(MessageRefreshUI* message) { - if (message->uiOnly) + m_onQtThread([this]() { - m_onQtThread([this]() - { - refresh(); - }); - } + refresh(); + }); } void QtSelfRefreshIconButton::refresh() diff --git a/src/lib_gui/qt/element/QtIconButton.h b/src/lib_gui/qt/element/QtIconButton.h index bc5874ad..72f311fa 100644 --- a/src/lib_gui/qt/element/QtIconButton.h +++ b/src/lib_gui/qt/element/QtIconButton.h @@ -5,7 +5,7 @@ #include "FilePath.h" #include "MessageListener.h" -#include "MessageRefresh.h" +#include "MessageRefreshUI.h" #include "QtThreadedFunctor.h" @@ -53,7 +53,7 @@ private: class QtSelfRefreshIconButton : public QPushButton - , public MessageListener + , public MessageListener { public: QtSelfRefreshIconButton( @@ -63,7 +63,7 @@ public: void setIconPath(const FilePath& iconPath); protected: - void handleMessage(MessageRefresh* message); + void handleMessage(MessageRefreshUI* message) override; virtual void refresh(); diff --git a/src/lib_gui/qt/view/QtGraphView.cpp b/src/lib_gui/qt/view/QtGraphView.cpp index 751a79f7..197d15d9 100644 --- a/src/lib_gui/qt/view/QtGraphView.cpp +++ b/src/lib_gui/qt/view/QtGraphView.cpp @@ -15,7 +15,7 @@ #include "MessageActivateTrail.h" #include "MessageDeactivateEdge.h" -#include "MessageRefresh.h" +#include "MessageRefreshUI.h" #include "MessageScrollGraph.h" #include "MessageStatus.h" #include "ResourcePaths.h" @@ -750,7 +750,7 @@ void QtGraphView::groupingUpdated(QPushButton* button) appSettings->save(); } - MessageRefresh().refreshUiOnly().noReloadStyle().dispatch(); + MessageRefreshUI().noStyleReload().dispatch(); } void QtGraphView::performScroll(QScrollBar* scrollBar, int value) const diff --git a/src/lib_gui/qt/window/QtMainWindow.cpp b/src/lib_gui/qt/window/QtMainWindow.cpp index 71334ef2..a7333201 100644 --- a/src/lib_gui/qt/window/QtMainWindow.cpp +++ b/src/lib_gui/qt/window/QtMainWindow.cpp @@ -43,6 +43,7 @@ #include "MessageInterruptTasks.h" #include "MessageLoadProject.h" #include "MessageRefresh.h" +#include "MessageRefreshUI.h" #include "MessageResetZoom.h" #include "MessageWindowClosed.h" #include "MessageZoom.h" @@ -412,7 +413,7 @@ void QtMainWindow::keyPressEvent(QKeyEvent* event) case Qt::Key_R: if (event->modifiers() & (Qt::ControlModifier | Qt::AltModifier)) { - MessageRefresh().refreshUiOnly().dispatch(); + MessageRefreshUI().dispatch(); } break; diff --git a/src/lib_gui/qt/window/QtPreferencesWindow.cpp b/src/lib_gui/qt/window/QtPreferencesWindow.cpp index 2e5ea05d..1ed20f33 100644 --- a/src/lib_gui/qt/window/QtPreferencesWindow.cpp +++ b/src/lib_gui/qt/window/QtPreferencesWindow.cpp @@ -2,7 +2,7 @@ #include "MessageLoadProject.h" #include "MessagePluginPortChange.h" -#include "MessageRefresh.h" +#include "MessageRefreshUI.h" #include "MessageScrollSpeedChange.h" #include "Application.h" @@ -108,7 +108,7 @@ void QtPreferencesWindow::handleNext() } else { - MessageRefresh().refreshUiOnly().dispatch(); + MessageRefreshUI().dispatch(); } QtWindow::handleClose();