diff options
author | Paul Davis <paul@linuxaudiosystems.com> | 2014-06-05 14:07:26 -0400 |
---|---|---|
committer | Paul Davis <paul@linuxaudiosystems.com> | 2014-06-05 14:12:58 -0400 |
commit | 05f476875ba5ad01e34b297837d9e3dfb246349c (patch) | |
tree | ac721a46fd47516769ebdbabba5db1c2027bee58 /gtk2_ardour/audio_region_view.cc | |
parent | 748c137461a34cbcf60237c483609b2c437c26b6 (diff) |
tweak logic for region coloring, particularly when muted
Diffstat (limited to 'gtk2_ardour/audio_region_view.cc')
-rw-r--r-- | gtk2_ardour/audio_region_view.cc | 36 |
1 files changed, 16 insertions, 20 deletions
diff --git a/gtk2_ardour/audio_region_view.cc b/gtk2_ardour/audio_region_view.cc index db5c609e7c..162ddaaf54 100644 --- a/gtk2_ardour/audio_region_view.cc +++ b/gtk2_ardour/audio_region_view.cc @@ -1419,7 +1419,7 @@ AudioRegionView::set_one_waveform_color (ArdourCanvas::WaveView* wave) { ArdourCanvas::Color fill; ArdourCanvas::Color outline; - + if (_selected) { if (_region->muted()) { /* hide outline with zero alpha */ @@ -1428,6 +1428,13 @@ AudioRegionView::set_one_waveform_color (ArdourCanvas::WaveView* wave) } else { outline = ARDOUR_UI::config()->get_canvasvar_SelectedWaveForm(); fill = ARDOUR_UI::config()->get_canvasvar_SelectedWaveFormFill(); + + if (ARDOUR_UI::config()->get_color_regions_using_track_color()) { + /* just use a slightly transparent version of the selected + * color so that some of the track color bleeds through + */ + fill = UINT_RGBA_CHANGE_A (fill, 217); + } } } else { if (_recregion) { @@ -1441,22 +1448,17 @@ AudioRegionView::set_one_waveform_color (ArdourCanvas::WaveView* wave) } else { outline = ARDOUR_UI::config()->get_canvasvar_WaveForm(); fill = ARDOUR_UI::config()->get_canvasvar_WaveFormFill(); + + if (ARDOUR_UI::config()->get_color_regions_using_track_color()) { + /* just use a slightly transparent version of the selected + * color so that some of the track color bleeds through + */ + fill = UINT_RGBA_CHANGE_A (fill, 217); + } } } } - if (ARDOUR_UI::config()->get_color_regions_using_track_color()) { - - /* just use a slightly transparent version of the selected - * color so that some of the track color bleeds through - */ - - double r, g, b, a; - ArdourCanvas::color_to_rgba (fill, r, g, b, a); - fill = ArdourCanvas::rgba_to_color (r, g, b, 0.85); /* magic number, not user controllable */ - outline = ARDOUR_UI::config()->get_canvasvar_WaveForm(); - } - wave->set_fill_color (fill); wave->set_outline_color (outline); wave->set_clip_color (ARDOUR_UI::config()->get_canvasvar_WaveFormClip()); @@ -1470,13 +1472,7 @@ AudioRegionView::set_frame_color () return; } - if (_region->opaque()) { - fill_opacity = 130; - } else { - fill_opacity = 0; - } - - TimeAxisViewItem::set_frame_color (); + RegionView::set_frame_color (); set_waveform_colors (); } |