}
}
-void
-Playlist::notify_length_changed ()
-{
- if (!holding_state ()) {
- pending_contents_change = false;
- ContentsChanged (); /* EMIT SIGNAL */
- }
-}
-
/** @param from_undo true if this flush is triggered by the end of an undo on this playlist */
void
Playlist::flush_notifications (bool from_undo)
bool
Playlist::add_region_internal (boost::shared_ptr<Region> region, framepos_t position)
{
- if (region->data_type() != _type){
+ if (region->data_type() != _type) {
return false;
}
RegionSortByPosition cmp;
- framecnt_t old_length = 0;
-
- if (!holding_state()) {
- old_length = _get_extent().second;
- }
-
if (!first_set_state) {
boost::shared_ptr<Playlist> foo (shared_from_this());
region->set_playlist (boost::weak_ptr<Playlist>(foo));
notify_region_added (region);
-
if (!holding_state ()) {
-
check_dependents (region, false);
-
- if (old_length != _get_extent().second) {
- notify_length_changed ();
- }
}
region->PropertyChanged.connect_same_thread (region_state_changed_connections, boost::bind (&Playlist::region_changed_proxy, this, _1, boost::weak_ptr<Region> (region)));
Playlist::remove_region_internal (boost::shared_ptr<Region> region)
{
RegionList::iterator i;
- framecnt_t old_length = 0;
-
- if (!holding_state()) {
- old_length = _get_extent().second;
- }
if (!in_set_state) {
/* unset playlist */
if (!holding_state ()) {
relayer ();
remove_dependents (region);
-
- if (old_length != _get_extent().second) {
- notify_length_changed ();
- }
}
notify_region_removed (region);
RegionLock rl1 (this);
RegionLock rl2 (other.get());
- framecnt_t const old_length = _get_extent().second;
-
int itimes = (int) floor (times);
framepos_t pos = position;
framecnt_t const shift = other->_get_extent().second;
}
pos += shift;
}
-
-
- /* XXX shall we handle fractional cases at some point? */
-
- if (old_length != _get_extent().second) {
- notify_length_changed ();
- }
-
-
}
return 0;
_splicing = false;
- notify_length_changed ();
+ notify_contents_changed ();
}
void
timestamp_layer_op (region);
}
- notify_length_changed ();
+ notify_contents_changed ();
relayer ();
check_dependents (region, false);
}
if (moved) {
_nudging = false;
- notify_length_changed ();
+ notify_contents_changed ();
}
}