diff options
Diffstat (limited to 'gtk2_ardour/plugin_ui.cc')
-rw-r--r-- | gtk2_ardour/plugin_ui.cc | 17 |
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; |