summaryrefslogtreecommitdiff
path: root/gtk2_ardour/gain_meter.cc
diff options
context:
space:
mode:
authorCarl Hetherington <carl@carlh.net>2011-10-19 10:01:37 +0000
committerCarl Hetherington <carl@carlh.net>2011-10-19 10:01:37 +0000
commit8232d4ab6f7ea3eb1df1cb73b77573cc64921a15 (patch)
treee0781f4a389f8466d26243ddbb965614d20a6d76 /gtk2_ardour/gain_meter.cc
parentfd39c1740069bc86fea91b9470f374e233210889 (diff)
Adjust send faders depending on what signal type they are passing (part of #4352).
git-svn-id: svn://localhost/ardour2/branches/3.0@10230 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'gtk2_ardour/gain_meter.cc')
-rw-r--r--gtk2_ardour/gain_meter.cc22
1 files changed, 13 insertions, 9 deletions
diff --git a/gtk2_ardour/gain_meter.cc b/gtk2_ardour/gain_meter.cc
index a92ac67c6f..040ed03ea6 100644
--- a/gtk2_ardour/gain_meter.cc
+++ b/gtk2_ardour/gain_meter.cc
@@ -427,18 +427,22 @@ GainMeterBase::show_gain ()
void
GainMeterBase::gain_adjusted ()
{
+ gain_t value = 0;
+
+ switch (_data_type) {
+ case DataType::AUDIO:
+ value = slider_position_to_gain_with_max (gain_adjustment.get_value(), Config->get_max_gain());
+ break;
+ case DataType::MIDI:
+ value = gain_adjustment.get_value ();
+ break;
+ }
+
if (!ignore_toggle) {
if (_route && _route->amp() == _amp) {
- switch (_data_type) {
- case DataType::MIDI:
- _route->set_gain (gain_adjustment.get_value(), this);
- break;
- case DataType::AUDIO:
- _route->set_gain (slider_position_to_gain_with_max (gain_adjustment.get_value(), Config->get_max_gain()), this);
- break;
- }
+ _route->set_gain (value, this);
} else {
- _amp->set_gain (slider_position_to_gain_with_max (gain_adjustment.get_value(), Config->get_max_gain()), this);
+ _amp->set_gain (value, this);
}
}