From 77100fc09e3ac70a647069ab3bb4ca7f52fc23d6 Mon Sep 17 00:00:00 2001 From: Klaus Basan Date: Sun, 7 May 2017 04:39:44 +0200 Subject: [PATCH] Ref T67, display load status messages --- src/blackgui/views/viewbase.cpp | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) diff --git a/src/blackgui/views/viewbase.cpp b/src/blackgui/views/viewbase.cpp index 6ba375b13..ee75c7d8b 100644 --- a/src/blackgui/views/viewbase.cpp +++ b/src/blackgui/views/viewbase.cpp @@ -37,6 +37,7 @@ #include "blackmisc/icons.h" #include "blackmisc/identifier.h" #include "blackmisc/identifierlist.h" +#include "blackmisc/logmessage.h" #include "blackmisc/namevariantpair.h" #include "blackmisc/namevariantpairlist.h" #include "blackmisc/network/client.h" @@ -573,14 +574,22 @@ namespace BlackGui void CViewBaseNonTemplate::ps_loadJsonAction() { if (!this->m_menus.testFlag(MenuLoad)) { return; } - this->ps_loadJson(); + const CStatusMessage m = this->ps_loadJson(); + if (!m.isEmpty()) + { + CLogMessage::preformatted(m); + } } void CViewBaseNonTemplate::ps_saveJsonAction() { if (this->isEmpty()) { return; } if (!this->m_menus.testFlag(MenuSave)) { return; } - this->ps_saveJson(); + const CStatusMessage m = this->ps_saveJson(); + if (!m.isEmpty()) + { + CLogMessage::preformatted(m); + } } void CViewBaseNonTemplate::ps_triggerReload() @@ -1374,7 +1383,7 @@ namespace BlackGui CStatusMessage CViewBase::validateLoadedJsonData(const ContainerType &data) const { Q_UNUSED(data); - static const CStatusMessage e(this, CStatusMessage::SeverityInfo, "no validation", true); + static const CStatusMessage e(this, CStatusMessage::SeverityInfo, "validation passed", true); return e; } @@ -1421,8 +1430,10 @@ namespace BlackGui } ContainerType container = containerVariant.value(); + const int countBefore = container.size(); m = this->modifyLoadedJsonData(container); if (m.isFailure()) { break; } // modification error + if (countBefore > 0 && container.isEmpty()) { break; } m = this->validateLoadedJsonData(container); if (m.isFailure()) { break; } // validaton error this->updateContainerMaybeAsync(container);