Merge branch 'ardour'
This commit is contained in:
commit
765a8b3303
@ -1920,7 +1920,7 @@ AudioRegionView::show_xfades ()
|
||||
void
|
||||
AudioRegionView::drag_start ()
|
||||
{
|
||||
TimeAxisViewItem::drag_start ();
|
||||
RegionView::drag_start ();
|
||||
|
||||
//we used to hide xfades here. I don't see the point with the new model, but we can re-implement if needed
|
||||
}
|
||||
|
@ -2795,11 +2795,12 @@ TrimDrag::motion (GdkEvent* event, bool first_move)
|
||||
rv->trim_front_starting ();
|
||||
}
|
||||
|
||||
rv->drag_start ();
|
||||
|
||||
AudioRegionView* const arv = dynamic_cast<AudioRegionView*> (rv);
|
||||
|
||||
if (arv) {
|
||||
arv->temporarily_hide_envelope ();
|
||||
arv->drag_start ();
|
||||
}
|
||||
|
||||
std::shared_ptr<Playlist> pl = rv->region ()->playlist ();
|
||||
@ -2875,10 +2876,13 @@ TrimDrag::motion (GdkEvent* event, bool first_move)
|
||||
}
|
||||
}
|
||||
|
||||
bool changed = false;
|
||||
|
||||
switch (_operation) {
|
||||
case StartTrim:
|
||||
for (list<DraggingView>::iterator i = _views.begin (); i != _views.end (); ++i) {
|
||||
bool changed = i->view->trim_front (timepos_t (i->initial_position) + dt, non_overlap_trim);
|
||||
changed = i->view->trim_front (timepos_t (i->initial_position) + dt, non_overlap_trim);
|
||||
|
||||
|
||||
if (changed && _preserve_fade_anchor) {
|
||||
AudioRegionView* arv = dynamic_cast<AudioRegionView*> (i->view);
|
||||
@ -2899,7 +2903,7 @@ TrimDrag::motion (GdkEvent* event, bool first_move)
|
||||
|
||||
case EndTrim:
|
||||
for (list<DraggingView>::iterator i = _views.begin (); i != _views.end (); ++i) {
|
||||
bool changed = i->view->trim_end (timepos_t (i->initial_end) + dt, non_overlap_trim);
|
||||
changed = i->view->trim_end (timepos_t (i->initial_end) + dt, non_overlap_trim);
|
||||
|
||||
if (changed && _preserve_fade_anchor) {
|
||||
AudioRegionView* arv = dynamic_cast<AudioRegionView*> (i->view);
|
||||
@ -2917,6 +2921,13 @@ TrimDrag::motion (GdkEvent* event, bool first_move)
|
||||
break;
|
||||
}
|
||||
|
||||
if (changed) {
|
||||
for (list<DraggingView>::const_iterator i = _views.begin (); i != _views.end (); ++i) {
|
||||
StreamView* sv = i->view->get_time_axis_view ().view ();
|
||||
sv->update_coverage_frame ();
|
||||
}
|
||||
}
|
||||
|
||||
switch (_operation) {
|
||||
case StartTrim:
|
||||
show_verbose_cursor_time (rv->region ()->position ());
|
||||
|
@ -963,17 +963,22 @@ RegionView::set_height (double h)
|
||||
}
|
||||
}
|
||||
|
||||
void
|
||||
RegionView::clear_coverage_frame ()
|
||||
{
|
||||
for (auto& i : _coverage_frame) {
|
||||
delete i;
|
||||
}
|
||||
_coverage_frame.clear ();
|
||||
}
|
||||
|
||||
/** Remove old coverage frame and make new ones, if we're in a LayerDisplay mode
|
||||
* which uses them. */
|
||||
void
|
||||
RegionView::update_coverage_frame (LayerDisplay d)
|
||||
{
|
||||
/* remove old coverage frame */
|
||||
for (auto& i : _coverage_frame) {
|
||||
delete i;
|
||||
}
|
||||
|
||||
_coverage_frame.clear ();
|
||||
clear_coverage_frame ();
|
||||
|
||||
if (d != Stacked) {
|
||||
/* don't do coverage frame unless we're in stacked mode */
|
||||
|
@ -238,6 +238,8 @@ private:
|
||||
|
||||
void update_cue_markers ();
|
||||
|
||||
void clear_coverage_frame ();
|
||||
|
||||
struct ViewCueMarker {
|
||||
ArdourMarker* view_marker;
|
||||
ARDOUR::CueMarker model_marker;
|
||||
|
@ -126,6 +126,7 @@ public:
|
||||
void check_record_layers (std::shared_ptr<ARDOUR::Region>, ARDOUR::samplepos_t);
|
||||
|
||||
virtual void playlist_layered (std::weak_ptr<ARDOUR::Track>);
|
||||
void update_coverage_frame ();
|
||||
|
||||
sigc::signal<void, RegionView*> RegionViewAdded;
|
||||
sigc::signal<void> RegionViewRemoved;
|
||||
@ -193,9 +194,6 @@ protected:
|
||||
*/
|
||||
samplepos_t _new_rec_layer_time;
|
||||
void setup_new_rec_layer_time (std::shared_ptr<ARDOUR::Region>);
|
||||
|
||||
private:
|
||||
void update_coverage_frame ();
|
||||
};
|
||||
|
||||
#endif /* __ardour_streamview_h__ */
|
||||
|
Loading…
Reference in New Issue
Block a user