From 8ceab4e193bb451607b68bdf892b79893b399d1a Mon Sep 17 00:00:00 2001 From: Paul Davis Date: Fri, 10 Jun 2016 15:00:43 -0400 Subject: make sure editor can follow visibility changes for VCAs --- gtk2_ardour/editor_routes.cc | 3 ++- gtk2_ardour/vca_time_axis.cc | 16 ++++++++++++++++ gtk2_ardour/vca_time_axis.h | 2 ++ 3 files changed, 20 insertions(+), 1 deletion(-) (limited to 'gtk2_ardour') diff --git a/gtk2_ardour/editor_routes.cc b/gtk2_ardour/editor_routes.cc index bc16c14d60..9c827c1412 100644 --- a/gtk2_ardour/editor_routes.cc +++ b/gtk2_ardour/editor_routes.cc @@ -581,7 +581,6 @@ EditorRoutes::redisplay_real () for (n = 0, position = 0, i = rows.begin(); i != rows.end(); ++i) { TimeAxisView *tv = (*i)[_columns.tv]; - boost::shared_ptr route = (*i)[_columns.stripable]; if (tv == 0) { // just a "title" row @@ -926,7 +925,9 @@ EditorRoutes::route_property_changed (const PropertyChange& what_changed, boost: if (what_changed.contains (ARDOUR::Properties::hidden)) { (*i)[_columns.visible] = !stripable->presentation_info().hidden(); + cerr << stripable->name() << " visibility changed, redisplay\n"; redisplay (); + } break; diff --git a/gtk2_ardour/vca_time_axis.cc b/gtk2_ardour/vca_time_axis.cc index 3bbb4a5f4c..0c77fd66f8 100644 --- a/gtk2_ardour/vca_time_axis.cc +++ b/gtk2_ardour/vca_time_axis.cc @@ -304,3 +304,19 @@ VCATimeAxisView::set_height (uint32_t h, TrackHeightMode m) set_gui_property ("height", h); _vca->gui_changed ("track_height", (void*) 0); /* EMIT SIGNAL */ } + +bool +VCATimeAxisView::marked_for_display () const +{ + return !_vca->presentation_info().hidden(); +} + +bool +VCATimeAxisView::set_marked_for_display (bool yn) +{ + if (yn == _vca->presentation_info().hidden()) { + _vca->presentation_info().set_hidden (!yn); + return true; // things changed + } + return false; +} diff --git a/gtk2_ardour/vca_time_axis.h b/gtk2_ardour/vca_time_axis.h index 2ee23bca44..c40b1ab288 100644 --- a/gtk2_ardour/vca_time_axis.h +++ b/gtk2_ardour/vca_time_axis.h @@ -52,6 +52,8 @@ class VCATimeAxisView : public TimeAxisView void set_height (uint32_t h, TrackHeightMode m = OnlySelf); bool selectable() const { return false; } + bool marked_for_display () const; + bool set_marked_for_display (bool); protected: boost::shared_ptr _vca; -- cgit v1.2.3