Plugin Automation All: Fix bug where Switches weren't being changed.

This commit is contained in:
Jeremy Carter 2014-11-14 20:34:05 -05:00 committed by Paul Davis
parent e8716de015
commit fe6e6e3f35
2 changed files with 4 additions and 1 deletions

View file

@ -300,6 +300,7 @@ GenericPluginUI::build ()
} }
control_uis.push_back(cui); 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()); 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.push_back (control_ui);
input_controls_with_automation.push_back (control_ui);
} else if (!is_input) { } else if (!is_input) {
@ -843,7 +845,7 @@ GenericPluginUI::astate_clicked (ControlUI* cui)
void void
GenericPluginUI::set_all_automation (AutoState as) GenericPluginUI::set_all_automation (AutoState as)
{ {
for (vector<ControlUI*>::iterator i = input_controls.begin(); i != input_controls.end(); ++i) { for (vector<ControlUI*>::iterator i = input_controls_with_automation.begin(); i != input_controls_with_automation.end(); ++i) {
if ((*i)->controller || (*i)->button) { if ((*i)->controller || (*i)->button) {
set_automation_state (as, (*i)); set_automation_state (as, (*i));
} }

View file

@ -266,6 +266,7 @@ class GenericPluginUI : public PlugUIBase, public Gtk::VBox
}; };
std::vector<ControlUI*> input_controls; std::vector<ControlUI*> input_controls;
std::vector<ControlUI*> input_controls_with_automation;
std::vector<ControlUI*> output_controls; std::vector<ControlUI*> output_controls;
sigc::connection screen_update_connection; sigc::connection screen_update_connection;
void output_update(); void output_update();