summaryrefslogtreecommitdiff
path: root/gtk2_ardour
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2014-02-20 14:01:40 -0500
committerPaul Davis <paul@linuxaudiosystems.com>2014-02-20 14:01:40 -0500
commit156a5a0e5f078901dde7b626bb51f478643a9225 (patch)
tree65c554e07ff42080c8c189b63e17cd3e05d9c410 /gtk2_ardour
parent104453227054d24c5ca1832d19f04388a5bd9534 (diff)
add the with-guard-point distinction to region gain lines
Diffstat (limited to 'gtk2_ardour')
-rw-r--r--gtk2_ardour/audio_region_view.cc4
-rw-r--r--gtk2_ardour/audio_region_view.h2
-rw-r--r--gtk2_ardour/editor_mouse.cc3
3 files changed, 5 insertions, 4 deletions
diff --git a/gtk2_ardour/audio_region_view.cc b/gtk2_ardour/audio_region_view.cc
index 93a5827b2b..23c84dc340 100644
--- a/gtk2_ardour/audio_region_view.cc
+++ b/gtk2_ardour/audio_region_view.cc
@@ -1207,7 +1207,7 @@ AudioRegionView::peaks_ready_handler (uint32_t which)
}
void
-AudioRegionView::add_gain_point_event (ArdourCanvas::Item *item, GdkEvent *ev)
+AudioRegionView::add_gain_point_event (ArdourCanvas::Item *item, GdkEvent *ev, bool with_guard_points)
{
if (!gain_line) {
return;
@@ -1252,7 +1252,7 @@ AudioRegionView::add_gain_point_event (ArdourCanvas::Item *item, GdkEvent *ev)
trackview.session()->add_command (new MementoCommand<AudioRegion>(*(audio_region().get()), &region_before, &region_after));
}
- audio_region()->envelope()->add (fx, y);
+ audio_region()->envelope()->add (fx, y, with_guard_points);
XMLNode &after = audio_region()->envelope()->get_state();
trackview.session()->add_command (new MementoCommand<AutomationList>(*audio_region()->envelope().get(), &before, &after));
diff --git a/gtk2_ardour/audio_region_view.h b/gtk2_ardour/audio_region_view.h
index ab3d59a235..7a2b2201b0 100644
--- a/gtk2_ardour/audio_region_view.h
+++ b/gtk2_ardour/audio_region_view.h
@@ -84,7 +84,7 @@ class AudioRegionView : public RegionView
void update_envelope_visibility ();
- void add_gain_point_event (ArdourCanvas::Item *item, GdkEvent *event);
+ void add_gain_point_event (ArdourCanvas::Item *item, GdkEvent *event, bool with_guard_points);
void remove_gain_point_event (ArdourCanvas::Item *item, GdkEvent *event);
boost::shared_ptr<AudioRegionGainLine> get_gain_line() const { return gain_line; }
diff --git a/gtk2_ardour/editor_mouse.cc b/gtk2_ardour/editor_mouse.cc
index 38380c91cc..ca3fdd1369 100644
--- a/gtk2_ardour/editor_mouse.cc
+++ b/gtk2_ardour/editor_mouse.cc
@@ -1702,7 +1702,8 @@ Editor::button_release_handler (ArdourCanvas::Item* item, GdkEvent* event, ItemT
*/
AudioRegionView* arv = dynamic_cast<AudioRegionView*> (clicked_regionview);
if (!were_dragging && arv) {
- arv->add_gain_point_event (item, event);
+ bool with_guard_points = !Keyboard::modifier_state_equals (event->button.state, Keyboard::PrimaryModifier);
+ arv->add_gain_point_event (item, event, with_guard_points);
}
return true;
break;