summaryrefslogtreecommitdiff
path: root/gtk2_ardour/plugin_ui.cc
diff options
context:
space:
mode:
authorCarl Hetherington <carl@carlh.net>2010-12-06 04:29:06 +0000
committerCarl Hetherington <carl@carlh.net>2010-12-06 04:29:06 +0000
commit3975355a5f7f2d795a369b091972051a50b9f331 (patch)
tree94a1dc604ecb128a50ebc07d603cbc1f9509cb16 /gtk2_ardour/plugin_ui.cc
parentbf7b8df028b5eceb227682c668e46a2c5e8b9278 (diff)
Add dialog to allow removal of plugin presets. Should fix #2662.
git-svn-id: svn://localhost/ardour2/branches/3.0@8196 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'gtk2_ardour/plugin_ui.cc')
-rw-r--r--gtk2_ardour/plugin_ui.cc17
1 files changed, 16 insertions, 1 deletions
diff --git a/gtk2_ardour/plugin_ui.cc b/gtk2_ardour/plugin_ui.cc
index fc8411cbb6..c51566614d 100644
--- a/gtk2_ardour/plugin_ui.cc
+++ b/gtk2_ardour/plugin_ui.cc
@@ -67,6 +67,7 @@
#include "latency_gui.h"
#include "plugin_eq_gui.h"
#include "new_plugin_preset_dialog.h"
+#include "edit_plugin_presets_dialog.h"
#include "i18n.h"
@@ -412,7 +413,8 @@ PluginUIWindow::plugin_going_away ()
PlugUIBase::PlugUIBase (boost::shared_ptr<PluginInsert> pi)
: insert (pi),
plugin (insert->plugin()),
- save_button(_("Add")),
+ save_button (_("Add")),
+ edit_button (_("Edit")),
bypass_button (_("Bypass")),
latency_gui (0),
plugin_analysis_expander (_("Plugin analysis"))
@@ -427,6 +429,9 @@ PlugUIBase::PlugUIBase (boost::shared_ptr<PluginInsert> pi)
save_button.set_name ("PluginSaveButton");
save_button.signal_clicked().connect(sigc::mem_fun(*this, &PlugUIBase::save_plugin_setting));
+ edit_button.set_name ("PluginEditButton");
+ edit_button.signal_clicked().connect (sigc::mem_fun (*this, &PlugUIBase::edit_plugin_settings));
+
insert->ActiveChanged.connect (active_connection, invalidator (*this), boost::bind (&PlugUIBase::processor_active_changed, this, boost::weak_ptr<Processor>(insert)), gui_context());
bypass_button.set_active (!pi->active());
@@ -452,6 +457,9 @@ PlugUIBase::PlugUIBase (boost::shared_ptr<PluginInsert> pi)
plugin_analysis_expander.set_expanded(false);
insert->DropReferences.connect (death_connection, invalidator (*this), boost::bind (&PlugUIBase::plugin_going_away, this), gui_context());
+
+ plugin->PresetAdded.connect (preset_added_connection, invalidator (*this), boost::bind (&PlugUIBase::update_presets, this), gui_context ());
+ plugin->PresetRemoved.connect (preset_removed_connection, invalidator (*this), boost::bind (&PlugUIBase::update_presets, this), gui_context ());
}
PlugUIBase::~PlugUIBase()
@@ -551,6 +559,13 @@ PlugUIBase::save_plugin_setting ()
}
void
+PlugUIBase::edit_plugin_settings ()
+{
+ EditPluginPresetsDialog d (plugin);
+ d.run ();
+}
+
+void
PlugUIBase::bypass_toggled ()
{
bool x;