store_flags ();
}
- if (trackview.editor.new_regionviews_display_gain()) {
+ if (trackview.editor().new_regionviews_display_gain()) {
_flags |= EnvelopeVisible;
}
setup_fade_handle_positions ();
+ if (!Config->get_show_region_fades()) {
+ set_fade_visibility (false);
+ }
+
string line_name = _region->name();
line_name += ':';
line_name += "gain";
/* all waveviews etc will be destroyed when the group is destroyed */
- if (gain_line) {
- delete gain_line;
- }
+ delete gain_line;
}
boost::shared_ptr<ARDOUR::AudioRegion>
fade_in_handle->hide();
fade_out_handle->hide();
} else {
- fade_in_handle->show();
- fade_out_handle->show();
+ if (Config->get_show_region_fades()) {
+ fade_in_handle->show();
+ fade_out_handle->show();
+ }
}
}
}
double const handle_height = 5;
if (fade_in_handle) {
- fade_in_handle->property_y1() = _y_position + handle_pos;
- fade_in_handle->property_y2() = _y_position + handle_pos + handle_height;
+ fade_in_handle->property_y1() = handle_pos;
+ fade_in_handle->property_y2() = handle_pos + handle_height;
}
if (fade_out_handle) {
- fade_out_handle->property_y1() = _y_position + handle_pos;
- fade_out_handle->property_y2() = _y_position + handle_pos + handle_height;
+ fade_out_handle->property_y1() = handle_pos;
+ fade_out_handle->property_y2() = handle_pos + handle_height;
}
}
}
if (_height >= 100) {
- double const wave_midpoint = _y_position + (_height - NAME_HIGHLIGHT_SIZE) / 2.0;
+ double const wave_midpoint = (_height - NAME_HIGHLIGHT_SIZE) / 2.0;
zero_line->property_y1() = wave_midpoint;
zero_line->property_y2() = wave_midpoint;
zero_line->show();
return;
}
- fade_in_shape->show();
+ if (Config->get_show_region_fades()) {
+ fade_in_shape->show();
+ }
float curve[npoints];
audio_region()->fade_in()->curve().get_vector (0, audio_region()->fade_in()->back()->when, curve, npoints);
for (pi = 0, pc = 0; pc < npoints; ++pc) {
(*points)[pi].set_x(1 + (pc * xdelta));
- (*points)[pi++].set_y(_y_position + 2 + (h - (curve[pc] * h)));
+ (*points)[pi++].set_y(2 + (h - (curve[pc] * h)));
}
/* fold back */
(*points)[pi].set_x(pwidth);
- (*points)[pi++].set_y(_y_position + 2);
+ (*points)[pi++].set_y(2);
(*points)[pi].set_x(1);
- (*points)[pi++].set_y(_y_position + 2);
+ (*points)[pi++].set_y(2);
/* connect the dots ... */
return;
}
- fade_out_shape->show();
+ if (Config->get_show_region_fades()) {
+ fade_out_shape->show();
+ }
float curve[npoints];
audio_region()->fade_out()->curve().get_vector (0, audio_region()->fade_out()->back()->when, curve, npoints);
for (pi = 0, pc = 0; pc < npoints; ++pc) {
(*points)[pi].set_x(_pixel_width - 1 - pwidth + (pc*xdelta));
- (*points)[pi++].set_y(_y_position + 2 + (h - (curve[pc] * h)));
+ (*points)[pi++].set_y(2 + (h - (curve[pc] * h)));
}
/* fold back */
(*points)[pi].set_x(_pixel_width);
- (*points)[pi++].set_y(_y_position + h);
+ (*points)[pi++].set_y(h);
(*points)[pi].set_x(_pixel_width);
- (*points)[pi++].set_y(_y_position + 2);
+ (*points)[pi++].set_y(2);
/* connect the dots ... */
item->w2i (x, y);
- nframes_t fx = trackview.editor.pixel_to_frame (x);
+ nframes_t fx = trackview.editor().pixel_to_frame (x);
if (fx > _region->length()) {
return;
/* compute vertical fractional position */
- y = 1.0 - (y / (trackview.current_height() - NAME_HIGHLIGHT_SIZE));
-
+ y = 1.0 - (y / (_height - NAME_HIGHLIGHT_SIZE));
+
/* map using gain line */
gain_line->view_to_model_y (y);
}
}
+void
+AudioRegionView::set_fade_visibility (bool yn)
+{
+ if (yn) {
+ if (fade_in_shape) {
+ fade_in_shape->show();
+ }
+ if (fade_out_shape) {
+ fade_out_shape->show ();
+ }
+ if (fade_in_handle) {
+ fade_in_handle->show ();
+ }
+ if (fade_out_handle) {
+ fade_out_handle->show ();
+ }
+ } else {
+ if (fade_in_shape) {
+ fade_in_shape->hide();
+ }
+ if (fade_out_shape) {
+ fade_out_shape->hide ();
+ }
+ if (fade_in_handle) {
+ fade_in_handle->hide ();
+ }
+ if (fade_out_handle) {
+ fade_out_handle->hide ();
+ }
+ }
+}