summaryrefslogtreecommitdiff
path: root/gtk2_ardour/automation_streamview.cc
diff options
context:
space:
mode:
authorDavid Robillard <d@drobilla.net>2008-09-21 16:17:02 +0000
committerDavid Robillard <d@drobilla.net>2008-09-21 16:17:02 +0000
commite14187aadd574d46c82d8eb0d151b526b84ddcc7 (patch)
treea80073703c5c3f4a68b4d50aee2c14be7cc1e204 /gtk2_ardour/automation_streamview.cc
parenteec19ca7afde0da57b2a4d9abc6ef847e6924975 (diff)
Display recorded controller data (fix show all/existing automation).
git-svn-id: svn://localhost/ardour2/branches/3.0@3779 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'gtk2_ardour/automation_streamview.cc')
-rw-r--r--gtk2_ardour/automation_streamview.cc17
1 files changed, 15 insertions, 2 deletions
diff --git a/gtk2_ardour/automation_streamview.cc b/gtk2_ardour/automation_streamview.cc
index 9bce718fce..024d235c7d 100644
--- a/gtk2_ardour/automation_streamview.cc
+++ b/gtk2_ardour/automation_streamview.cc
@@ -99,11 +99,13 @@ AutomationStreamView::add_region_view_internal (boost::shared_ptr<Region> region
for (i = region_views.begin(); i != region_views.end(); ++i) {
if ((*i)->region() == region) {
- /* great. we already have a MidiRegionView for this Region. use it again. */
+ /* great. we already have an AutomationRegionView for this Region. use it again. */
+ AutomationRegionView* arv = dynamic_cast<AutomationRegionView*>(*i);;
+ arv->line()->set_list (list);
(*i)->set_valid (true);
(*i)->enable_display(wfd);
- display_region(dynamic_cast<AutomationRegionView*>(*i));
+ display_region(arv);
return NULL;
}
@@ -140,6 +142,17 @@ AutomationStreamView::display_region(AutomationRegionView* region_view)
}
void
+AutomationStreamView::set_automation_state (AutoState state)
+{
+ std::list<RegionView *>::iterator i;
+ for (i = region_views.begin(); i != region_views.end(); ++i) {
+ boost::shared_ptr<AutomationLine> line = ((AutomationRegionView*)(*i))->line();
+ if (line && line->the_list())
+ line->the_list()->set_automation_state (state);
+ }
+}
+
+void
AutomationStreamView::redisplay_diskstream ()
{
list<RegionView *>::iterator i, tmp;