Fix yet another oversight for the windows icon file update
[ardour.git] / gtk2_ardour / gain_meter.cc
index 946a09018260cdd68c97f1b016a073bdab9cf73e..5e2cd62c624f3b2b31440f1ef47f6178b9b94520 100644 (file)
@@ -384,7 +384,7 @@ GainMeterBase::setup_meters (int len)
 void
 GainMeterBase::set_type (MeterType t)
 {
-       level_meter->set_type(t);
+       level_meter->set_meter_type(t);
 }
 
 void
@@ -581,7 +581,14 @@ GainMeterBase::fader_moved ()
                        value = gain_adjustment.get_value();
                }
 
-               _control->set_value (value, Controllable::UseGroup);
+               // XXX hack allow to override group
+               // (this breaks group'ed  shift+click reset)
+               if (Keyboard::the_keyboard().key_is_down (GDK_Shift_R)
+                               || Keyboard::the_keyboard().key_is_down (GDK_Shift_L)) {
+                       _control->set_value (value, Controllable::NoGroup);
+               } else {
+                       _control->set_value (value, Controllable::UseGroup);
+               }
        }
 
        show_gain ();
@@ -645,7 +652,7 @@ gint
 GainMeterBase::meter_press(GdkEventButton* ev)
 {
        if (!_route) {
-               return FALSE;
+               return false;
        }
        if (!ignore_toggle) {
                switch (ev->button) {
@@ -676,7 +683,7 @@ GainMeterBase::meter_press(GdkEventButton* ev)
                                break;
                }
        }
-       return TRUE;
+       return true;
 }
 
 void
@@ -725,6 +732,7 @@ void
 GainMeterBase::amp_stop_touch ()
 {
        _control->stop_touch (false, _control->session().transport_frame());
+       effective_gain_display ();
 }
 
 gint