wave->set_height (ht);
wave->set_samples_per_pixel (samples_per_pixel);
wave->set_show_zero_line (true);
+ wave->set_clip_level (Config->get_waveform_clip_level ());
switch (Config->get_waveform_shape()) {
case Rectified:
void
AudioRegionView::set_waveform_colors ()
-{
- for (vector<ArdourCanvas::WaveView*>::iterator w = waves.begin(); w != waves.end(); ++w) {
- set_one_waveform_color (*w);
- }
-}
-
-void
-AudioRegionView::set_one_waveform_color (ArdourCanvas::WaveView* wave)
{
ArdourCanvas::Color fill;
ArdourCanvas::Color outline;
-
+ ArdourCanvas::Color clip = ARDOUR_UI::config()->get_canvasvar_WaveFormClip();
+ ArdourCanvas::Color zero = ARDOUR_UI::config()->get_canvasvar_ZeroLine();
+
if (_selected) {
if (_region->muted()) {
/* hide outline with zero alpha */
} 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) {
} 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();
-
- if (!Config->get_show_name_highlight()) {
- /* recolor name text because it needs to contrast with
- the waveform background, not the name highlight.
- */
- }
+ for (vector<ArdourCanvas::WaveView*>::iterator w = waves.begin(); w != waves.end(); ++w) {
+ (*w)->set_fill_color (fill);
+ (*w)->set_outline_color (outline);
+ (*w)->set_clip_color (clip);
+ (*w)->set_zero_color (zero);
}
-
- wave->set_fill_color (fill);
- wave->set_outline_color (outline);
- wave->set_clip_color (ARDOUR_UI::config()->get_canvasvar_WaveFormClip());
- wave->set_zero_color (ARDOUR_UI::config()->get_canvasvar_ZeroLine());
}
void
return;
}
- if (_region->opaque()) {
- fill_opacity = 130;
- } else {
- fill_opacity = 0;
- }
-
- TimeAxisViewItem::set_frame_color ();
+ RegionView::set_frame_color ();
set_waveform_colors ();
}