mirror of
https://github.com/Ardour/ardour.git
synced 2025-12-06 14:54:56 +01:00
Right-click on a VCA to assign it to the selected channels.
This commit is contained in:
parent
71003b0235
commit
b759bae0cd
5 changed files with 36 additions and 4 deletions
|
|
@ -426,6 +426,22 @@ MixerStrip::~MixerStrip ()
|
|||
_entered_mixer_strip = NULL;
|
||||
}
|
||||
|
||||
void
|
||||
MixerStrip::vca_assign (boost::shared_ptr<ARDOUR::VCA> vca)
|
||||
{
|
||||
boost::shared_ptr<Slavable> sl = boost::dynamic_pointer_cast<Slavable> ( route() );
|
||||
if (sl)
|
||||
sl->assign(vca);
|
||||
}
|
||||
|
||||
void
|
||||
MixerStrip::vca_unassign (boost::shared_ptr<ARDOUR::VCA> vca)
|
||||
{
|
||||
boost::shared_ptr<Slavable> sl = boost::dynamic_pointer_cast<Slavable> ( route() );
|
||||
if (sl)
|
||||
sl->unassign(vca);
|
||||
}
|
||||
|
||||
bool
|
||||
MixerStrip::mixer_strip_enter_event (GdkEventCrossing* /*ev*/)
|
||||
{
|
||||
|
|
|
|||
|
|
@ -185,6 +185,9 @@ class MixerStrip : public AxisView, public RouteUI, public Gtk::EventBox
|
|||
Gtk::Table mute_solo_table;
|
||||
Gtk::Table bottom_button_table;
|
||||
|
||||
void vca_assign (boost::shared_ptr<ARDOUR::VCA>);
|
||||
void vca_unassign (boost::shared_ptr<ARDOUR::VCA>);
|
||||
|
||||
void meter_changed ();
|
||||
void monitor_changed ();
|
||||
|
||||
|
|
|
|||
|
|
@ -3087,26 +3087,22 @@ void
|
|||
Mixer_UI::vca_assign (boost::shared_ptr<VCA> vca)
|
||||
{
|
||||
set_axis_targets_for_operation ();
|
||||
#if 0
|
||||
BOOST_FOREACH(AxisView* r, _axis_targets) {
|
||||
MixerStrip* ms = dynamic_cast<MixerStrip*> (r);
|
||||
if (ms) {
|
||||
ms->vca_assign (vca);
|
||||
}
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
void
|
||||
Mixer_UI::vca_unassign (boost::shared_ptr<VCA> vca)
|
||||
{
|
||||
set_axis_targets_for_operation ();
|
||||
#if 0
|
||||
BOOST_FOREACH(AxisView* r, _axis_targets) {
|
||||
MixerStrip* ms = dynamic_cast<MixerStrip*> (r);
|
||||
if (ms) {
|
||||
ms->vca_unassign (vca);
|
||||
}
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
|
|
|||
|
|
@ -449,6 +449,9 @@ VCAMasterStrip::build_context_menu ()
|
|||
items.push_back (MenuElem (_("Rename"), sigc::mem_fun (*this, &VCAMasterStrip::start_name_edit)));
|
||||
items.push_back (MenuElem (_("Color..."), sigc::mem_fun (*this, &VCAMasterStrip::start_color_edit)));
|
||||
items.push_back (SeparatorElem());
|
||||
items.push_back (MenuElem (_("Assign Selected Channels"), sigc::mem_fun (*this, &VCAMasterStrip::assign_all_selected)));
|
||||
items.push_back (MenuElem (_("Drop Selected Channels"), sigc::mem_fun (*this, &VCAMasterStrip::unassign_all_selected)));
|
||||
items.push_back (SeparatorElem());
|
||||
items.push_back (MenuElem (_("Drop All Slaves"), sigc::mem_fun (*this, &VCAMasterStrip::drop_all_slaves)));
|
||||
items.push_back (SeparatorElem());
|
||||
items.push_back (MenuElem (_("Remove"), sigc::mem_fun (*this, &VCAMasterStrip::remove)));
|
||||
|
|
@ -486,6 +489,18 @@ VCAMasterStrip::remove ()
|
|||
_session->vca_manager().remove_vca (_vca);
|
||||
}
|
||||
|
||||
void
|
||||
VCAMasterStrip::assign_all_selected ()
|
||||
{
|
||||
Mixer_UI::instance()->do_vca_assign (_vca);
|
||||
}
|
||||
|
||||
void
|
||||
VCAMasterStrip::unassign_all_selected ()
|
||||
{
|
||||
Mixer_UI::instance()->do_vca_unassign (_vca);
|
||||
}
|
||||
|
||||
void
|
||||
VCAMasterStrip::drop_all_slaves ()
|
||||
{
|
||||
|
|
|
|||
|
|
@ -99,6 +99,8 @@ class VCAMasterStrip : public AxisView, public Gtk::EventBox
|
|||
void self_delete ();
|
||||
void remove ();
|
||||
void drop_all_slaves ();
|
||||
void assign_all_selected ();
|
||||
void unassign_all_selected ();
|
||||
|
||||
void parameter_changed (std::string const& p);
|
||||
void set_button_names ();
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue