From fe6e6e3f35dfad64c1e03fb005241f0652f38247 Mon Sep 17 00:00:00 2001 From: Jeremy Carter Date: Fri, 14 Nov 2014 20:34:05 -0500 Subject: [PATCH] Plugin Automation All: Fix bug where Switches weren't being changed. --- gtk2_ardour/generic_pluginui.cc | 4 +++- gtk2_ardour/plugin_ui.h | 1 + 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/gtk2_ardour/generic_pluginui.cc b/gtk2_ardour/generic_pluginui.cc index 8442d8b966..4ef2e27347 100644 --- a/gtk2_ardour/generic_pluginui.cc +++ b/gtk2_ardour/generic_pluginui.cc @@ -300,6 +300,7 @@ GenericPluginUI::build () } control_uis.push_back(cui); + input_controls_with_automation.push_back (cui); } } @@ -735,6 +736,7 @@ GenericPluginUI::build_control_ui (const Evoral::Parameter& param, mcontrol->alist()->automation_state_changed.connect (control_connections, invalidator (*this), boost::bind (&GenericPluginUI::automation_state_changed, this, control_ui), gui_context()); input_controls.push_back (control_ui); + input_controls_with_automation.push_back (control_ui); } else if (!is_input) { @@ -843,7 +845,7 @@ GenericPluginUI::astate_clicked (ControlUI* cui) void GenericPluginUI::set_all_automation (AutoState as) { - for (vector::iterator i = input_controls.begin(); i != input_controls.end(); ++i) { + for (vector::iterator i = input_controls_with_automation.begin(); i != input_controls_with_automation.end(); ++i) { if ((*i)->controller || (*i)->button) { set_automation_state (as, (*i)); } diff --git a/gtk2_ardour/plugin_ui.h b/gtk2_ardour/plugin_ui.h index 7cc201ff7a..bb15b2ef08 100644 --- a/gtk2_ardour/plugin_ui.h +++ b/gtk2_ardour/plugin_ui.h @@ -266,6 +266,7 @@ class GenericPluginUI : public PlugUIBase, public Gtk::VBox }; std::vector input_controls; + std::vector input_controls_with_automation; std::vector output_controls; sigc::connection screen_update_connection; void output_update(); -- 2.30.2