aboutsummaryrefslogtreecommitdiff
path: root/src/plugins/Effect/ladspa/settingsdialog.cpp
diff options
context:
space:
mode:
authortrialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38>2009-12-06 18:20:45 +0000
committertrialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38>2009-12-06 18:20:45 +0000
commit648d09c5cea5ad4c2e31d51ff804ec32b23ac458 (patch)
tree4f6f236373690c7ad65720fbdf1bd8498ac99c81 /src/plugins/Effect/ladspa/settingsdialog.cpp
parent6c37e46ff15eab4ccd47b6162a3d350aa35b7b39 (diff)
downloadqmmp-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.cpp35
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()