From 93d6e3db687680fcf522f994912d33c65735f26d Mon Sep 17 00:00:00 2001 From: carlh Date: Tue, 25 May 2010 16:40:35 +0000 Subject: [PATCH] Make discrete mode work for MIDI automation views. Fixes #3178. git-svn-id: svn+ssh://ardour.org/ardour2/branches/3.0@7159 d708f5d6-7413-0410-9779-e7cbd77b26cf --- gtk2_ardour/automation_streamview.cc | 12 +++++++++++- gtk2_ardour/automation_streamview.h | 2 ++ gtk2_ardour/automation_time_axis.cc | 7 +++++++ 3 files changed, 20 insertions(+), 1 deletion(-) diff --git a/gtk2_ardour/automation_streamview.cc b/gtk2_ardour/automation_streamview.cc index 3eeb3bd6..fad14006 100644 --- a/gtk2_ardour/automation_streamview.cc +++ b/gtk2_ardour/automation_streamview.cc @@ -225,4 +225,14 @@ AutomationStreamView::has_automation () const return false; } - +void +AutomationStreamView::set_interpolation (AutomationList::InterpolationStyle s) +{ + for (list::iterator i = region_views.begin(); i != region_views.end(); ++i) { + AutomationRegionView* arv = dynamic_cast (*i); + assert (arv); + if (arv->line()) { + arv->line()->set_interpolation (s); + } + } +} diff --git a/gtk2_ardour/automation_streamview.h b/gtk2_ardour/automation_streamview.h index f5463ca4..a3235f7b 100644 --- a/gtk2_ardour/automation_streamview.h +++ b/gtk2_ardour/automation_streamview.h @@ -56,6 +56,8 @@ class AutomationStreamView : public StreamView bool has_automation () const; + void set_interpolation (ARDOUR::AutomationList::InterpolationStyle); + private: void setup_rec_box (); diff --git a/gtk2_ardour/automation_time_axis.cc b/gtk2_ardour/automation_time_axis.cc index b36ba59e..51923089 100644 --- a/gtk2_ardour/automation_time_axis.cc +++ b/gtk2_ardour/automation_time_axis.cc @@ -364,6 +364,10 @@ AutomationTimeAxisView::interpolation_changed () if (_line) { _line->set_interpolation(style); } + + if (_view) { + _view->set_interpolation (style); + } } void @@ -373,6 +377,9 @@ AutomationTimeAxisView::set_interpolation (AutomationList::InterpolationStyle st if (_line) { _line->set_interpolation(style); } + if (_view) { + _view->set_interpolation (style); + } } void -- 2.11.4.GIT