#include "ardour/source_factory.h"
#include "ardour/tempo.h"
#include "ardour/types.h"
+#include "ardour/evoral_types_convert.h"
#include "pbd/i18n.h"
#include <locale.h>
: Region (other, offset)
, _start_beats (Properties::start_beats, other->_start_beats)
, _length_beats (Properties::length_beats, other->_length_beats)
+ , _ignore_shift (false)
{
register_properties ();
}
if (!_ignore_shift) {
+ PropertyChange what_changed;
_start_beats += qn_distance;
framepos_t const new_start = _session.tempo_map().frames_between_quarter_notes (_quarter_note - _start_beats, _quarter_note);
_start = new_start;
- send_change (Properties::start);
+ what_changed.add (Properties::start);
+ what_changed.add (Properties::start_beats);
+ send_change (what_changed);
} else {
_ignore_shift = false;
}
{
Region::set_start_internal (s, sub_num);
- if (_start_beats < 0.0) {
- fix_negative_start();
- }
-
set_start_beats_from_start_frames ();
}