mirror of
https://github.com/swift-project/pilotclient.git
synced 2026-03-30 20:15:35 +08:00
Issue #15 [GUI] Use filter to avoid sending ignored messages over dbus
This commit is contained in:
@@ -63,6 +63,11 @@ namespace BlackGui
|
||||
{
|
||||
ui->comp_StatusMessages->appendStatusMessagesToList(messages);
|
||||
});
|
||||
connect(ui->comp_StatusMessages, &CStatusMessagesDetail::filterChanged, this, [this](const CVariant &filter)
|
||||
{
|
||||
clearMessages();
|
||||
m_history.setFilter(filter.to<CLogPattern>());
|
||||
});
|
||||
m_history.setFilter(CLogPattern().withSeverityAtOrAbove(CStatusMessage::SeverityInfo));
|
||||
m_history.initialize(sApp->getDataLinkDBus());
|
||||
}
|
||||
|
||||
@@ -8,10 +8,13 @@
|
||||
|
||||
#include "statusmessagesdetail.h"
|
||||
#include "ui_statusmessagesdetail.h"
|
||||
#include "blackgui/filters/statusmessagefilterbar.h"
|
||||
#include "blackgui/filters/statusmessagefilterdialog.h"
|
||||
|
||||
using namespace BlackMisc;
|
||||
using namespace BlackGui::Menus;
|
||||
using namespace BlackGui::Views;
|
||||
using namespace BlackGui::Filters;
|
||||
|
||||
namespace BlackGui
|
||||
{
|
||||
@@ -29,6 +32,11 @@ namespace BlackGui
|
||||
ui->tvp_StatusMessages->setCustomMenu(new CMessageMenu(this));
|
||||
ui->tvp_StatusMessages->menuAddItems(CStatusMessageView::MenuSave);
|
||||
this->showFilterBar(); // default
|
||||
|
||||
connect(ui->filter_LogMessages, &CStatusMessageFilterBar::changeFilter, this, [this](bool enable)
|
||||
{
|
||||
emit filterChanged(enable ? ui->filter_LogMessages->createModelFilter()->getAsValueObject() : CVariant{});
|
||||
});
|
||||
}
|
||||
|
||||
CStatusMessagesDetail::~CStatusMessagesDetail()
|
||||
@@ -57,6 +65,11 @@ namespace BlackGui
|
||||
{
|
||||
ui->tvp_StatusMessages->addFilterDialog();
|
||||
ui->filter_LogMessages->hide();
|
||||
|
||||
connect(ui->tvp_StatusMessages->getFilterDialog(), &QDialog::accepted, [this]
|
||||
{
|
||||
emit filterChanged(ui->tvp_StatusMessages->getFilterDialog()->createModelFilter()->getAsValueObject());
|
||||
});
|
||||
}
|
||||
|
||||
void CStatusMessagesDetail::showFilterBar()
|
||||
|
||||
@@ -78,6 +78,9 @@ namespace BlackGui
|
||||
//! \copydoc BlackGui::Views::CStatusMessageView::modelDataChangedDigest
|
||||
void modelDataChangedDigest(int count, bool withFilter);
|
||||
|
||||
//! The user changed their message filter
|
||||
void filterChanged(const BlackMisc::CVariant &filter);
|
||||
|
||||
private:
|
||||
QScopedPointer<Ui::CStatusMessagesDetail> ui;
|
||||
int m_maxLogMessages = -1;
|
||||
|
||||
Reference in New Issue
Block a user