diff options
author | Paul Davis <paul@linuxaudiosystems.com> | 2010-05-20 22:38:12 +0000 |
---|---|---|
committer | Paul Davis <paul@linuxaudiosystems.com> | 2010-05-20 22:38:12 +0000 |
commit | a196405da9fab534b5ece4d165e871d02d671b36 (patch) | |
tree | 17cf937e579046c2fb84c30db5c09bb87def6451 /libs/ardour/midi_source.cc | |
parent | e58f6752af39d5aa032b45eca1c8f392fd874b16 (diff) |
various minor MIDI fixes: prevent duplicate note entry with mouse, show note info more often with verbose cursor, fix some crashes from click+move on notes ... lots more where this comes from
git-svn-id: svn://localhost/ardour2/branches/3.0@7128 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'libs/ardour/midi_source.cc')
-rw-r--r-- | libs/ardour/midi_source.cc | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/libs/ardour/midi_source.cc b/libs/ardour/midi_source.cc index 5e8bda1ea2..0c66879330 100644 --- a/libs/ardour/midi_source.cc +++ b/libs/ardour/midi_source.cc @@ -250,7 +250,11 @@ MidiSource::clone (Evoral::MusicalTime begin, Evoral::MusicalTime end) newsrc->set_timeline_position(_timeline_position); if (_model) { - _model->write_to (newsrc, begin, end); + if (begin == Evoral::MinMusicalTime && end == Evoral::MaxMusicalTime) { + _model->write_to (newsrc); + } else { + _model->write_section_to (newsrc, begin, end); + } } else { error << string_compose (_("programming error: %1"), X_("no model for MidiSource during ::clone()")); return boost::shared_ptr<MidiSource>(); @@ -290,3 +294,9 @@ MidiSource::set_note_mode(NoteMode mode) } } +void +MidiSource::drop_model () +{ + cerr << name() << " drop model\n"; + _model.reset(); +} |