mirror of
https://github.com/Ardour/ardour.git
synced 2025-12-15 19:16:40 +01:00
provide solo mute gain Config parameter as a controllable and use it in the monitor section GUI to allow MIDI binding
git-svn-id: svn://localhost/ardour2/branches/3.0@8825 d708f5d6-7413-0410-9779-e7cbd77b26cf
This commit is contained in:
parent
c1be28e7b0
commit
2484291254
8 changed files with 39 additions and 106 deletions
|
|
@ -18,7 +18,6 @@
|
|||
#include "monitor_section.h"
|
||||
#include "public_editor.h"
|
||||
#include "utils.h"
|
||||
#include "volume_controller.h"
|
||||
|
||||
#include "i18n.h"
|
||||
|
||||
|
|
@ -155,7 +154,7 @@ MonitorSection::MonitorSection (Session* s)
|
|||
|
||||
/* Solo (SiP) cut */
|
||||
|
||||
solo_cut_control = new VolumeController (little_knob_pixbuf, &solo_cut_adjustment, false, 30, 30);
|
||||
solo_cut_control = new MotionFeedback (little_knob_pixbuf, MotionFeedback::Rotary, "", &solo_cut_adjustment, false, 30, 30);
|
||||
|
||||
spin_label = manage (new Label (_("SiP Cut")));
|
||||
spin_packer = manage (new VBox);
|
||||
|
|
@ -310,25 +309,26 @@ MonitorSection::set_session (Session* s)
|
|||
_route = _session->monitor_out ();
|
||||
|
||||
if (_route) {
|
||||
/* session with control outs */
|
||||
/* session with monitor section */
|
||||
_monitor = _route->monitor_control ();
|
||||
assign_controllables ();
|
||||
} else {
|
||||
/* session with no control outs */
|
||||
/* session with no monitor section */
|
||||
_monitor.reset ();
|
||||
_route.reset ();
|
||||
}
|
||||
|
||||
} else {
|
||||
/* no session */
|
||||
|
||||
_monitor.reset ();
|
||||
_route.reset ();
|
||||
control_connections.drop_connections ();
|
||||
rude_iso_button.set_active (false);
|
||||
rude_solo_button.set_active (false);
|
||||
}
|
||||
|
||||
/* both might be null */
|
||||
assign_controllables ();
|
||||
}
|
||||
}
|
||||
|
||||
MonitorSection::ChannelButtonSet::ChannelButtonSet ()
|
||||
|
|
@ -628,9 +628,6 @@ MonitorSection::register_actions ()
|
|||
tact = Glib::RefPtr<ToggleAction>::cast_dynamic(act);
|
||||
tact->set_active (Config->get_solo_mute_override());
|
||||
|
||||
/* map from RC config */
|
||||
|
||||
|
||||
|
||||
/* note the 1-based counting (for naming - backend uses 0-based) */
|
||||
|
||||
|
|
@ -1014,6 +1011,12 @@ MonitorSection::assign_controllables ()
|
|||
return;
|
||||
}
|
||||
|
||||
if (_session) {
|
||||
solo_cut_control->set_controllable (_session->solo_cut_control());
|
||||
} else {
|
||||
solo_cut_control->set_controllable (none);
|
||||
}
|
||||
|
||||
if (_route) {
|
||||
gain_control->set_controllable (_route->gain_control());
|
||||
control_link (control_connections, _route->gain_control(), gain_adjustment);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue