mirror of
https://github.com/Ardour/ardour.git
synced 2025-12-16 19:56:31 +01:00
make VCA strips sensitive to solo model
This commit is contained in:
parent
670e79f7d1
commit
531dca486d
2 changed files with 34 additions and 0 deletions
|
|
@ -166,6 +166,9 @@ VCAMasterStrip::VCAMasterStrip (Session* s, boost::shared_ptr<VCA> v)
|
||||||
|
|
||||||
_vca->DropReferences.connect (vca_connections, invalidator (*this), boost::bind (&VCAMasterStrip::self_delete, this), gui_context());
|
_vca->DropReferences.connect (vca_connections, invalidator (*this), boost::bind (&VCAMasterStrip::self_delete, this), gui_context());
|
||||||
|
|
||||||
|
s->config.ParameterChanged.connect (*this, invalidator (*this), boost::bind (&VCAMasterStrip::parameter_changed, this, _1), gui_context());
|
||||||
|
Config->ParameterChanged.connect (*this, invalidator (*this), boost::bind (&VCAMasterStrip::parameter_changed, this, _1), gui_context());
|
||||||
|
UIConfiguration::instance().ParameterChanged.connect (sigc::mem_fun (*this, &VCAMasterStrip::parameter_changed));
|
||||||
}
|
}
|
||||||
|
|
||||||
VCAMasterStrip::~VCAMasterStrip ()
|
VCAMasterStrip::~VCAMasterStrip ()
|
||||||
|
|
@ -187,6 +190,34 @@ VCAMasterStrip::self_delete ()
|
||||||
delete_when_idle (this);
|
delete_when_idle (this);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
VCAMasterStrip::parameter_changed (std::string const & p)
|
||||||
|
{
|
||||||
|
if (p == "use-monitor-bus" || p == "solo-control-is-listen-control" || p == "listen-position") {
|
||||||
|
set_button_names ();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
VCAMasterStrip::set_button_names ()
|
||||||
|
{
|
||||||
|
if (Config->get_solo_control_is_listen_control()) {
|
||||||
|
switch (Config->get_listen_position()) {
|
||||||
|
case AfterFaderListen:
|
||||||
|
solo_button.set_text (S_("AfterFader|A"));
|
||||||
|
set_tooltip (solo_button, _("After-fade listen (AFL)"));
|
||||||
|
break;
|
||||||
|
case PreFaderListen:
|
||||||
|
solo_button.set_text (S_("PreFader|P"));
|
||||||
|
set_tooltip (solo_button, _("Pre-fade listen (PFL)"));
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
solo_button.set_text (S_("Solo|S"));
|
||||||
|
set_tooltip (solo_button, _("Solo"));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
VCAMasterStrip::update_vca_display ()
|
VCAMasterStrip::update_vca_display ()
|
||||||
{
|
{
|
||||||
|
|
|
||||||
|
|
@ -96,6 +96,9 @@ class VCAMasterStrip : public AxisView, public Gtk::EventBox
|
||||||
void remove ();
|
void remove ();
|
||||||
void drop_button_press ();
|
void drop_button_press ();
|
||||||
void drop_all_slaves ();
|
void drop_all_slaves ();
|
||||||
|
|
||||||
|
void parameter_changed (std::string const& p);
|
||||||
|
void set_button_names ();
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue