summaryrefslogtreecommitdiff
path: root/gtk2_ardour/midi_region_view.cc
AgeCommit message (Collapse)Author
2016-12-16more work on patch change redisplay.nick_m
- fixes just-introduced undo crash.
2016-12-15correct return syntaxPaul Davis
2016-12-15speed up patch change redisplay when using scroomer / adjusting height.nick_m
- zoom is still a bit slow.
2016-12-14test diff for patch change performance when caching colours.nick_m
2016-12-03Remove Evoral::MIDIEventDavid Robillard
It is slightly questionable whether type specific methods like velocity() belong on Event at all, these may be better off as free functions. However the code currently uses them as methods in many places, and it seems like a step in the right direction, since, for example, we might some day have events that have a velocity but aren't stored as MIDI messages (e.g. if Ardour uses an internal musical model that is more expressive). In any case, the former inheritance and plethora of sloppy casts is definitely not the right thing.
2016-11-23MidiRegionView::clear_events() does _selection.clear(). remove the extra one.nick_m
2016-11-23decouple midi region note range and height from midi streamview.nick_m
- this allows a midi region drag to update the visible notes correctly while crossing MIDI streamviews with a differing note range. as a side effect, fixes a bug where changing note range on a track did not draw some notes (apply_note_range redisplays the model).
2016-11-22don't display notes that start at region end.nick_m
- its not obvious that this is happening in sustained mode, but Percussive reveals all.
2016-11-22fix thinko in 8e8c4a73f1e.nick_m
2016-11-22prevent Percussive mode from displaying a ghost hit at region end.nick_m
2016-11-21fix compilation, rename PercussiveCreateDrag -> HitCreateDragnick_m
2016-11-21rework mouse hit creation (percussive mode) - mostly as per #7130.nick_m
- snap behaviour is round to nearest - holding down button 1 while dragging creates many (if not already present) hits.
2016-11-21MRV handles an alt key press even if nothing happened.nick_m
- nothing else treats a modifier press as a key press event, so don't pass it on. amends 0af9fb0d
2016-11-21fix for short notes being displayed as infinitely long.nick_m
2016-11-20pressing alt while creating a note (snap modifier) keeps mouse_state.nick_m
2016-11-20after creating a note, don't add the ghost note until next motion.nick_m
2016-11-20NoteCreateDrag starts on button press.nick_m
- removes the separation between click and drag-creation of notes noth now handled by the drag code).
2016-11-19remove unused variable.nick_m
2016-11-19further to 1a6a72b57, handle deleting a note while a non-selected one is ↵nick_m
entered.
2016-11-19fix for ghost note becoming stuck after note selection deleted.nick_m
- thanks ristic for the report
2016-11-11rename Region pos_beats -> quarter_notenick_m
2016-11-11rename Region pulse to pos_beats. use new beat distance api where required.nick_m
- add more debugging output detecting regions whose beat and frame position do not align on a playlist. this is required as a check as we have never used frame rounding on constant tempi before 8884a5723dc
2016-10-26clean up ghost note wrt create drag.nick_m
- hide ghost note when add dragging. - new note length snaps as per ghost note start (shifted snap). - prevent ghost note from appearing before region start.
2016-10-17Amend previous commit.nick_m
2016-10-17Set note colour of new MidiGhostRegions corrctly.nick_m
2016-10-16Slightly improve note update performance, fix note resizing for non-4.0 ↵nick_m
meter divisors.
2016-10-15Note selection state uses note event_id_t.nick_m
2016-10-10Interpret start & length_beats properties as double rather than Evoral::Beats.nick_m
- Evoral::Beats operator!= would prevent an increment of start_beats by intervals of less than a tick, so its possible that other subtle problems existed due to this kind of thing.
2016-10-09Use double comparison in MidiRegionView::note_in_region_range().nick_m
2016-09-23Fix bug where drawing long notes placed the new note on the previous snap line.nick_m
- NoteCreateDrag already applies this shift, so it was always applied twice to the note start frame.
2016-09-23Remove _midi_regions_use_bbt_beats from Session, _start_pulse and ↵nick_m
_length_pulse from MidiRegion. - _start/length_beats are now quarter notes regardless of loaded session version. - also restores note colour update
2016-09-15Do not delete selected MIDI notes while dragging. (See #6602)Guido Aulisi
This is not caused by commit_reversible_command, but because NoteDrag::total_dx calls Evoral::Note<Evoral::Beats>::time() with invalid MIDI note (deleted).
2016-09-07Remove unused variable.nick_m
2016-09-02Ensure the correct position is passed to MidiRegionView::get_grid_beats().nick_m
2016-08-31No-op - rename var in MidiRegionView::note_dropped().nick_m
2016-08-31MidiRegionView uses quarter note snapping.nick_m
- also ensures poiinter ghost note respects the snap modifier.
2016-08-16Add missing line feed in midi_region_view.ccnick_m
2016-08-16Midi region ghost note uses beat-based note time calculation.nick_m
2016-08-16Fix frame-based beat calculation in ↵nick_m
MidiRegionView::snap_frame_to_grid_underneath() - this caused the ghost note under the pointer to behave badly when hovering near an audio-locked meter.
2016-08-08fix thinko that causes near duplicate menu items in group context menu when ↵Paul Davis
not in group tabs
2016-07-22Remove the temporary note group in MidiRegionView, update start trim during ↵nick_m
drag.
2016-07-14enough with umpteen "i18n.h" files. Consolidate on pbd/i18n.hPaul Davis
2016-07-12use new midi-note-name APIRobin Gareus
2016-07-10remove reference "const int32_t&" -> const int32_t"Robin Gareus
this simplifies lua-bindings and also let's the compiler worry about constant primitive types.
2016-07-10Midi note resizing uses exact beat.nick_m
2016-07-10Use exact beat when adding midi notes.nick_m
2016-07-10Fix note trimming over tempo changes, correct note length properly when ↵nick_m
resizing midi region.
2016-07-10Restore earlier midi region trim display.nick_m
2016-07-10Use Note::set (Rect) for speed improvement when rendering notes.nick_m
2016-07-10Temporary work-around for note colour.nick_m