#include <FilterParameterWidget.h>
Public Slots | |
| void | on_butterworthButton_toggled (bool) |
| void | on_convolutionButton_toggled (bool) |
| void | on_filterType_activated (int) |
| void | updateAllFields () |
Signals | |
| void | parametersChanged () |
Public Member Functions | |
| FilterParameterWidget (QWidget *parent=0, Qt::WFlags fl=0) | |
| void | getParameters (FilterParameters ¶m) const |
| void | setParameters (const FilterParameters ¶m) |
| GeopsyGui::FilterParameterWidget::FilterParameterWidget | ( | QWidget * | parent = 0, |
| Qt::WFlags | fl = 0 |
||
| ) |
References parametersChanged(), and TRACE.
: QWidget(parent, fl)
{
TRACE;
setupUi(this);
// signals and slots connections
connect(causalEdit, SIGNAL(toggled(bool)), this, SIGNAL(parametersChanged()));
connect(filtFromFreq, SIGNAL(valueChanged(double)), this, SIGNAL(parametersChanged()));
connect(filtToFreq, SIGNAL(valueChanged(double)), this, SIGNAL(parametersChanged()));
connect(orderEdit, SIGNAL(valueChanged(int)), this, SIGNAL(parametersChanged()));
connect(windowEdit, SIGNAL(parametersChanged()), this, SIGNAL(parametersChanged()));
}
| void GeopsyGui::FilterParameterWidget::getParameters | ( | FilterParameters & | param | ) | const |
References GeopsyCore::FilterParameters::convolutionWindow(), GeopsyCore::FilterParameters::setBand(), GeopsyCore::FilterParameters::setCausal(), GeopsyCore::FilterParameters::setMaximumFrequency(), GeopsyCore::FilterParameters::setMethod(), GeopsyCore::FilterParameters::setMinimumFrequency(), GeopsyCore::FilterParameters::setOrder(), GeopsyCore::FilterParameters::sort(), and TRACE.
Referenced by WaveformConsole::filter().
{
TRACE;
switch (filterType->currentIndex()) {
case 1:
param.setBand(FilterParameters::HighPass);
break;
case 2:
param.setBand(FilterParameters::BandPass);
param.sort();
break;
case 3:
param.setBand(FilterParameters::BandReject);
param.sort();
break;
default:
param.setBand(FilterParameters::LowPass);
break;
}
param.setMinimumFrequency(filtFromFreq->value());
param.setMaximumFrequency(filtToFreq->value());
if(butterworthButton->isChecked()) {
param.setOrder(orderEdit->value());
param.setCausal(causalEdit->isChecked());
param.setMethod(FilterParameters::Butterworth);
} else {
windowEdit->getParameters(param.convolutionWindow());
param.setMethod(FilterParameters::Convolution);
}
}
| void GeopsyGui::FilterParameterWidget::on_butterworthButton_toggled | ( | bool | ) | [slot] |
References parametersChanged(), and TRACE.
Referenced by updateAllFields().
{
TRACE;
bool b=butterworthButton->isChecked();
causalEdit->setEnabled(b);
orderEdit->setEnabled(b);
orderLabel->setEnabled(b);
emit parametersChanged();
}
| void GeopsyGui::FilterParameterWidget::on_convolutionButton_toggled | ( | bool | ) | [slot] |
References parametersChanged(), and TRACE.
Referenced by updateAllFields().
{
TRACE;
bool b=convolutionButton->isChecked();
windowEdit->setEnabled(b);
emit parametersChanged();
}
| void GeopsyGui::FilterParameterWidget::on_filterType_activated | ( | int | ) | [slot] |
References parametersChanged(), and TRACE.
Referenced by updateAllFields().
{
TRACE;
if(filterType->currentIndex()>1) {
filtToFreq->show();
toFreqLabel->show();
fromFreqLabel->setText("From");
} else {
fromFreqLabel->setText("Value");
filtToFreq->hide();
toFreqLabel->hide();
}
emit parametersChanged();
}
| void GeopsyGui::FilterParameterWidget::parametersChanged | ( | ) | [signal] |
| void GeopsyGui::FilterParameterWidget::setParameters | ( | const FilterParameters & | param | ) |
References GeopsyCore::FilterParameters::band(), GeopsyCore::FilterParameters::causal(), GeopsyCore::FilterParameters::convolutionWindow(), GeopsyCore::FilterParameters::maximumFrequency(), GeopsyCore::FilterParameters::method(), GeopsyCore::FilterParameters::minimumFrequency(), GeopsyCore::FilterParameters::order(), and TRACE.
{
TRACE;
switch (param.band()) {
case FilterParameters::LowPass:
filterType->setCurrentIndex(0);
break;
case FilterParameters::HighPass:
filterType->setCurrentIndex(1);
break;
case FilterParameters::BandPass:
filterType->setCurrentIndex(2);
break;
case FilterParameters::BandReject:
filterType->setCurrentIndex(3);
break;
}
filtFromFreq->setValue(param.minimumFrequency());
filtToFreq->setValue(param.maximumFrequency());
switch(param.method()) {
case FilterParameters::Butterworth:
orderEdit->setValue(param.order());
causalEdit->setChecked(param.causal());
break;
case FilterParameters::Convolution:
windowEdit->setParameters(param.convolutionWindow());
break;
}
}
| void GeopsyGui::FilterParameterWidget::updateAllFields | ( | ) | [slot] |
References on_butterworthButton_toggled(), on_convolutionButton_toggled(), on_filterType_activated(), and TRACE.
Referenced by WaveformConsole::filter().
{
TRACE;
on_filterType_activated(0);
on_butterworthButton_toggled(true);
on_convolutionButton_toggled(true);
windowEdit->updateAllFields();
}