2 #include <QDialogButtonBox>
4 #include <QRadioButton>
6 #include <QTableWidget>
10 #include <QVBoxLayout>
14 :
QDialog(parent), mFilterList(filterList), mHandleTableEdit(true)
16 if (inputList.
isEmpty())
return;
31 layTable->
addWidget(
new QLabel(
"Trigger only upon transiton to value VT (X = all values)", fTable));
35 for (
int irow=0; irow<inputList.
size(); irow++)
41 for (
int icol=0; icol<2; icol++)
57 mEnterFilter =
new QRadioButton(
"Select waveform as filter:");
60 mSelectFilter =
new QComboBox(fExpression);
67 mSelectFilter->
addItem(txt,QVariant::fromValue<void*>(wd));
76 void TriggerDialog::handleTableCellChanged(
int irow,
int icol)
78 if (!mHandleTableEdit)
return;
79 mHandleTableEdit =
false;
82 int val = txt.
toInt(&ok);
83 if ((val < 0 || !ok) && txt !=
"X")
85 mHandleTableEdit =
true;
91 for (
int irow = 0; irow < mTableWidget->
rowCount(); irow++)
102 void TriggerDialog::handleFilterToggled(
bool state)
109 if (!mEnterFilter->
isChecked())
return nullptr;
111 if (!sel.
isValid())
return nullptr;
TriggerDialog(const QList< WaveData * > inputList, const QList< WaveData * > filterList, QWidget *parent=nullptr)
QList< int > transitionToValue() const
WaveData * filterWave() const
void addItem(const QString &text, const QVariant &userData)
void setFrameStyle(int style)
void append(const T &value)
const T & at(int i) const const
bool isEmpty() const const
QMetaObject::Connection connect(const QObject *sender, const char *signal, const QObject *receiver, const char *method, Qt::ConnectionType type)
QString arg(qlonglong a, int fieldWidth, int base, QChar fillChar) const const
QString number(int n, int base)
int toInt(bool *ok, int base) const const
QString trimmed() const const
void setColumnWidth(int column, int width)
void setText(const QString &text)
QString text() const const
bool isValid() const const