diff options
author | nick_m <mainsbridge@gmail.com> | 2016-05-08 03:03:12 +1000 |
---|---|---|
committer | nick_m <mainsbridge@gmail.com> | 2016-05-27 23:38:16 +1000 |
commit | 86b0268e8be554e9286aebd544757fc13fe76dac (patch) | |
tree | 959f2fb0dbe33a738e15caf8186a56a58beace56 /gtk2_ardour/editor_mouse.cc | |
parent | 652a59b3178b0d0905f8d9610500a71f0924edc0 (diff) |
Tempo ramps - add visualtempo curve, dragging bbt or music rulers with constraint modifier dilates previous tempo.
Diffstat (limited to 'gtk2_ardour/editor_mouse.cc')
-rw-r--r-- | gtk2_ardour/editor_mouse.cc | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/gtk2_ardour/editor_mouse.cc b/gtk2_ardour/editor_mouse.cc index 4a4bfe1e1e..03974dbd5f 100644 --- a/gtk2_ardour/editor_mouse.cc +++ b/gtk2_ardour/editor_mouse.cc @@ -711,13 +711,17 @@ Editor::button_press_handler_1 (ArdourCanvas::Item* item, GdkEvent* event, ItemT case MarkerBarItem: case TempoBarItem: + case TempoCurveItem: case MeterBarItem: case TimecodeRulerItem: case SamplesRulerItem: case MinsecRulerItem: case BBTRulerItem: - if (!Keyboard::modifier_state_equals (event->button.state, Keyboard::PrimaryModifier)) { + if (!Keyboard::modifier_state_equals (event->button.state, Keyboard::PrimaryModifier) + && !Keyboard::modifier_state_equals (event->button.state, ArdourKeyboard::constraint_modifier())) { _drags->set (new CursorDrag (this, *playhead_cursor, false), event); + } else if (Keyboard::modifier_state_equals (event->button.state, ArdourKeyboard::constraint_modifier())) { + _drags->set (new BBTRulerDrag (this, item), event); } return true; break; @@ -1333,7 +1337,6 @@ Editor::button_release_handler (ArdourCanvas::Item* item, GdkEvent* event, ItemT case RegionItem: show_region_properties (); break; - case TempoMarkerItem: { ArdourMarker* marker; TempoMarker* tempo_marker; @@ -1438,6 +1441,7 @@ Editor::button_release_handler (ArdourCanvas::Item* item, GdkEvent* event, ItemT case TransportMarkerBarItem: case CdMarkerBarItem: case TempoBarItem: + case TempoCurveItem: case MeterBarItem: case VideoBarItem: case TimecodeRulerItem: @@ -1547,8 +1551,8 @@ Editor::button_release_handler (ArdourCanvas::Item* item, GdkEvent* event, ItemT mouse_add_new_marker (where, true); } return true; - case TempoBarItem: + case TempoCurveItem: if (!_dragging_playhead) { snap_to_with_modifier (where, event); mouse_add_new_tempo_event (where); |