diff options
author | David Robillard <d@drobilla.net> | 2014-12-17 18:40:38 -0500 |
---|---|---|
committer | David Robillard <d@drobilla.net> | 2014-12-17 18:41:23 -0500 |
commit | 6e912a0aa31313636e2957ec0aa97d4103ee117f (patch) | |
tree | b0ab3ba60fb7b623f0a29d305e8e5eb62eb2708c /gtk2_ardour/midi_region_view.cc | |
parent | 0f63ac06a44c92dd46e66dc2e8b29908ef8e3078 (diff) |
Fix display of MIDI notes/regions while recording.
Make record rect transparency configurable.
Factor out some copy-paste streamview code.
Diffstat (limited to 'gtk2_ardour/midi_region_view.cc')
-rw-r--r-- | gtk2_ardour/midi_region_view.cc | 13 |
1 files changed, 4 insertions, 9 deletions
diff --git a/gtk2_ardour/midi_region_view.cc b/gtk2_ardour/midi_region_view.cc index e072d7c7ce..2879e65af7 100644 --- a/gtk2_ardour/midi_region_view.cc +++ b/gtk2_ardour/midi_region_view.cc @@ -1559,7 +1559,8 @@ MidiRegionView::extend_active_notes() for (unsigned i=0; i < 128; ++i) { if (_active_notes[i]) { - _active_notes[i]->set_x1 (trackview.editor().sample_to_pixel(_region->length())); + _active_notes[i]->set_x1( + trackview.editor().sample_to_pixel(_region->position() + _region->length())); } } } @@ -3781,8 +3782,6 @@ MidiRegionView::data_recorded (boost::weak_ptr<MidiSource> w) boost::shared_ptr<MidiBuffer> buf = mtv->midi_track()->get_gui_feed_buffer (); - BeatsFramesConverter converter (trackview.session()->tempo_map(), mtv->midi_track()->get_capture_start_frame (0)); - framepos_t back = max_framepos; for (MidiBuffer::iterator i = buf->begin(); i != buf->end(); ++i) { @@ -3796,12 +3795,8 @@ MidiRegionView::data_recorded (boost::weak_ptr<MidiSource> w) } } - /* ev.time() is in session frames, so (ev.time() - converter.origin_b()) is - frames from the start of the source, and so time_beats is in terms of the - source. - */ - - Evoral::MusicalTime const time_beats = converter.from (ev.time () - converter.origin_b ()); + /* convert from session frames to source beats */ + Evoral::MusicalTime const time_beats = _source_relative_time_converter.from(ev.time()); if (ev.type() == MIDI_CMD_NOTE_ON) { boost::shared_ptr<NoteType> note ( |