summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCarl Hetherington <carl@carlh.net>2011-12-30 21:56:11 +0000
committerCarl Hetherington <carl@carlh.net>2011-12-30 21:56:11 +0000
commitb5b921d8203ea73e53e4460a9e464e17f411c900 (patch)
treed4fca51c11c46cd6110012e335b5168fb37dcc80
parentdd53e7284ae1ef8ae594cb1a34db6500f944eab3 (diff)
Make coverage frames work slightly better; jury is still out on whether they are any use, I think.
git-svn-id: svn://localhost/ardour2/branches/3.0@11121 d708f5d6-7413-0410-9779-e7cbd77b26cf
-rw-r--r--gtk2_ardour/region_view.cc11
-rw-r--r--gtk2_ardour/streamview.cc9
2 files changed, 9 insertions, 11 deletions
diff --git a/gtk2_ardour/region_view.cc b/gtk2_ardour/region_view.cc
index ac16a28bf4..4db77f030d 100644
--- a/gtk2_ardour/region_view.cc
+++ b/gtk2_ardour/region_view.cc
@@ -779,8 +779,8 @@ RegionView::update_coverage_frames (LayerDisplay d)
ArdourCanvas::SimpleRect* cr = 0;
bool me = false;
- uint32_t const color = frame->property_fill_color_rgba ();
- uint32_t const base_alpha = UINT_RGBA_A (color);
+ /* the color that will be used to show parts of regions that will not be heard */
+ uint32_t non_playing_color = RGBA_TO_UINT (32, 32, 32, 192);
while (t < end) {
@@ -802,12 +802,11 @@ RegionView::update_coverage_frames (LayerDisplay d)
cr->property_y1() = 1;
cr->property_y2() = _height + 1;
cr->property_outline_pixels() = 0;
- /* areas that will be played get a lower alpha */
- uint32_t alpha = base_alpha;
if (new_me) {
- alpha /= 2;
+ cr->property_fill_color_rgba () = UINT_RGBA_CHANGE_A (non_playing_color, 0);
+ } else {
+ cr->property_fill_color_rgba () = non_playing_color;
}
- cr->property_fill_color_rgba () = UINT_RGBA_CHANGE_A (color, alpha);
}
t = pl->find_next_region_boundary (t, 1);
diff --git a/gtk2_ardour/streamview.cc b/gtk2_ardour/streamview.cc
index 2fce87fa80..b9d577819f 100644
--- a/gtk2_ardour/streamview.cc
+++ b/gtk2_ardour/streamview.cc
@@ -324,21 +324,20 @@ StreamView::playlist_switched (boost::weak_ptr<Track> wtr)
playlist_connections.drop_connections ();
undisplay_track ();
+ /* draw it */
+
+ redisplay_track ();
+
/* update layers count and the y positions and heights of our regions */
_layers = tr->playlist()->top_layer() + 1;
update_contents_height ();
update_coverage_frames ();
- /* draw it */
-
- redisplay_track ();
-
/* catch changes */
tr->playlist()->LayeringChanged.connect (playlist_connections, invalidator (*this), boost::bind (&StreamView::playlist_layered, this, boost::weak_ptr<Track> (tr)), gui_context());
tr->playlist()->RegionAdded.connect (playlist_connections, invalidator (*this), ui_bind (&StreamView::add_region_view, this, _1), gui_context());
tr->playlist()->RegionRemoved.connect (playlist_connections, invalidator (*this), ui_bind (&StreamView::remove_region_view, this, _1), gui_context());
- tr->playlist()->ContentsChanged.connect (playlist_connections, invalidator (*this), ui_bind (&StreamView::update_coverage_frames, this), gui_context());
}
void