DUNE-DAQ
DUNE Trigger and Data Acquisition software
Toggle main menu visibility
Loading...
Searching...
No Matches
dunedaq
sourcecode
dbe
include
dbe
FilterTextEdit.hpp
Go to the documentation of this file.
1
#ifndef FILTERTEXTEDIT_H
2
#define FILTERTEXTEDIT_H
7
#include "
ers/ers.hpp
"
8
#include <QRegExp>
9
#include <QTextEdit>
10
namespace
daq
{
11
namespace
QTUtils
{
12
46
class
FilterTextEdit
:
public
QTextEdit
47
{
48
Q_OBJECT
49
public
:
50
FilterTextEdit
(QWidget* parent)
51
: QTextEdit(parent)
52
,
m_invert
(false)
53
{
54
;
55
}
56
virtual
~FilterTextEdit
() { ; }
57
void
append
(
const
QString& text)
58
{
59
m_original
.append(text);
60
if
(text.contains(
m_filter
)) {
61
QTextEdit::append(text);
62
}
63
}
64
void
setPlainText
(
const
QString& text)
65
{
66
m_original
= text;
67
filterAndSet
(text);
68
}
69
70
void
setFilter
(
const
QString& filter)
71
{
72
m_filter
= filter;
73
this->
filterAndSet
(
m_original
);
74
}
75
void
setInversion
(
bool
invert) {
m_invert
= invert; }
76
77
private
slots:
78
void
clear
()
79
{
80
m_original
=
""
;
81
QTextEdit::clear();
82
}
83
84
private
:
85
void
filterAndSet
(
const
QString& text)
86
{
87
if
(
m_filter
!=
""
) {
88
QStringList strings = text.split(
"\n"
);
89
if
(!
m_invert
) {
90
strings = strings.filter(
m_filter
);
91
}
else
{
92
QStringList result;
93
foreach
(QString str, strings) {
94
if
(!str.contains(
m_filter
)) {
95
result += str;
96
}
97
}
98
strings = result;
99
}
100
QString filtered = strings.join(
"\n"
);
101
QTextEdit::setPlainText(filtered);
102
}
else
{
103
QTextEdit::setPlainText(text);
104
}
105
}
106
107
QString
m_filter
;
108
QString
m_original
;
109
bool
m_invert
;
110
};
111
}
112
}
113
#endif
daq::QTUtils::FilterTextEdit::setInversion
void setInversion(bool invert)
Definition
FilterTextEdit.hpp:75
daq::QTUtils::FilterTextEdit::setFilter
void setFilter(const QString &filter)
Definition
FilterTextEdit.hpp:70
daq::QTUtils::FilterTextEdit::m_filter
QString m_filter
Definition
FilterTextEdit.hpp:107
daq::QTUtils::FilterTextEdit::m_original
QString m_original
Definition
FilterTextEdit.hpp:108
daq::QTUtils::FilterTextEdit::clear
void clear()
Definition
FilterTextEdit.hpp:78
daq::QTUtils::FilterTextEdit::FilterTextEdit
FilterTextEdit(QWidget *parent)
Definition
FilterTextEdit.hpp:50
daq::QTUtils::FilterTextEdit::~FilterTextEdit
virtual ~FilterTextEdit()
Definition
FilterTextEdit.hpp:56
daq::QTUtils::FilterTextEdit::m_invert
bool m_invert
the 'original' text.
Definition
FilterTextEdit.hpp:109
daq::QTUtils::FilterTextEdit::filterAndSet
void filterAndSet(const QString &text)
Definition
FilterTextEdit.hpp:85
daq::QTUtils::FilterTextEdit::append
void append(const QString &text)
Definition
FilterTextEdit.hpp:57
daq::QTUtils::FilterTextEdit::setPlainText
void setPlainText(const QString &text)
Definition
FilterTextEdit.hpp:64
ers.hpp
daq::QTUtils
Definition
FilterTextEdit.hpp:11
daq
Including ers headers.
Definition
config_api_graph.hpp:23
Generated on
for DUNE-DAQ by
1.18.0