From ac2d665c6be93d7c55434176c051b530dd2e9934 Mon Sep 17 00:00:00 2001 From: Klaus Basan Date: Sat, 13 Jul 2019 03:39:50 +0200 Subject: [PATCH] Status message utility function, overlay frame utility function --- src/blackgui/overlaymessages.cpp | 2 ++ src/blackgui/overlaymessagesframe.h | 14 ++++++++++++++ src/blackmisc/statusmessagelist.cpp | 5 +++++ src/blackmisc/statusmessagelist.h | 3 +++ 4 files changed, 24 insertions(+) diff --git a/src/blackgui/overlaymessages.cpp b/src/blackgui/overlaymessages.cpp index 399280bcf..45ee90060 100644 --- a/src/blackgui/overlaymessages.cpp +++ b/src/blackgui/overlaymessages.cpp @@ -383,6 +383,8 @@ namespace BlackGui } this->setModeToHTMLMessage(); + ui->te_HTMLMessage->setTextColor(QColor(Qt::white)); // hardcoded color + ui->te_HTMLMessage->setReadOnly(true); ui->te_HTMLMessage->setText(htmlMessage); this->display(timeOutMs); } diff --git a/src/blackgui/overlaymessagesframe.h b/src/blackgui/overlaymessagesframe.h index c8b304e81..5e88d2a3e 100644 --- a/src/blackgui/overlaymessagesframe.h +++ b/src/blackgui/overlaymessagesframe.h @@ -156,6 +156,20 @@ namespace BlackGui WIDGET::repaint(); } + //! \copydoc BlackGui::COverlayMessages::showOverlayMessages + void showOverlayHTMLMessageOrMessages(const BlackMisc::CStatusMessageList &messages, bool appendOldMessages = false, int timeOutMs = -1) + { + if (messages.isEmpty()) { return; } + if (messages.size() == 1) + { + this->showOverlayHTMLMessage(messages.front(), timeOutMs); + } + else + { + this->showOverlayMessages(messages, appendOldMessages, timeOutMs); + } + } + //! \copydoc BlackGui::COverlayMessages::sortOverlayMessages void sortOverlayMessages(const BlackMisc::CPropertyIndex &property, Qt::SortOrder order) { diff --git a/src/blackmisc/statusmessagelist.cpp b/src/blackmisc/statusmessagelist.cpp index aad7bafa0..62a37b0e5 100644 --- a/src/blackmisc/statusmessagelist.cpp +++ b/src/blackmisc/statusmessagelist.cpp @@ -87,6 +87,11 @@ namespace BlackMisc } } + void CStatusMessageList::addValidationCategory() + { + this->addCategory(CLogCategory::validation()); + } + void CStatusMessageList::addCategories(const CLogCategoryList &categories) { for (auto &msg : *this) diff --git a/src/blackmisc/statusmessagelist.h b/src/blackmisc/statusmessagelist.h index 59a66ff99..3e43e12f6 100644 --- a/src/blackmisc/statusmessagelist.h +++ b/src/blackmisc/statusmessagelist.h @@ -78,6 +78,9 @@ namespace BlackMisc //! Add a category to all messages in the list void addCategory(const CLogCategory &category); + //! Validation category + void addValidationCategory(); + //! Add some categories to all messages in the list void addCategories(const CLogCategoryList &categories);