diff options
| author | trialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38> | 2009-12-06 18:20:45 +0000 |
|---|---|---|
| committer | trialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38> | 2009-12-06 18:20:45 +0000 |
| commit | 648d09c5cea5ad4c2e31d51ff804ec32b23ac458 (patch) | |
| tree | 4f6f236373690c7ad65720fbdf1bd8498ac99c81 /src/plugins/Effect/ladspa/settingsdialog.cpp | |
| parent | 6c37e46ff15eab4ccd47b6162a3d350aa35b7b39 (diff) | |
| download | qmmp-648d09c5cea5ad4c2e31d51ff804ec32b23ac458.tar.gz qmmp-648d09c5cea5ad4c2e31d51ff804ec32b23ac458.tar.bz2 qmmp-648d09c5cea5ad4c2e31d51ff804ec32b23ac458.zip | |
changed effect api
git-svn-id: http://svn.code.sf.net/p/qmmp-dev/code/trunk/qmmp@1425 90c681e8-e032-0410-971d-27865f9a5e38
Diffstat (limited to 'src/plugins/Effect/ladspa/settingsdialog.cpp')
| -rw-r--r-- | src/plugins/Effect/ladspa/settingsdialog.cpp | 35 |
1 files changed, 30 insertions, 5 deletions
diff --git a/src/plugins/Effect/ladspa/settingsdialog.cpp b/src/plugins/Effect/ladspa/settingsdialog.cpp index 4d0c33a6f..e4d78a698 100644 --- a/src/plugins/Effect/ladspa/settingsdialog.cpp +++ b/src/plugins/Effect/ladspa/settingsdialog.cpp @@ -22,7 +22,11 @@ #include <QApplication> #include <QStyle> #include <QStandardItemModel> +#include <QFormLayout> +#include <QWidget> +#include <QLabel> #include <qmmp/qmmp.h> +#include "ladspaslider.h" #include "ladspaplugin.h" #include "settingsdialog.h" @@ -90,13 +94,34 @@ void SettingsDialog::on_configureButton_clicked() { LADSPAHost *l = LADSPAHost::instance(); QModelIndex index = ui.runningListWidget->currentIndex (); - if(index.isValid()) + if(!index.isValid()) + return; + + LADSPAEffect *effect = l->runningPlugins().at(index.row()); + QDialog *dialog = new QDialog(this); + dialog->setWindowTitle(effect->descriptor->Name); + QFormLayout *formLayout = new QFormLayout(dialog); + + foreach(LADSPAControl *c, effect->controls) + { + switch ((int) c->type) + { + case LADSPAControl::BUTTON: + break; + case LADSPAControl::SLIDER: + LADSPASlider *slider = new LADSPASlider(c->min, c->max, c->step, c->value, l, dialog); + formLayout->addRow(c->name, slider); + } + } + if (effect->controls.isEmpty()) { - l->runningPlugins().at(index.row())->widget->setParent(this); - l->runningPlugins().at(index.row())->widget->setWindowFlags(Qt::Window); - l->runningPlugins().at(index.row())->widget->show(); - //updateRunningPlugins(); + QLabel *label = new QLabel(tr("This LADSPA plugin has no user controls"), dialog); + formLayout->addRow(label); } + dialog->setLayout(formLayout); + dialog->setFixedSize(dialog->sizeHint()); + dialog->exec(); + dialog->deleteLater(); } void SettingsDialog::accept() |
