summaryrefslogtreecommitdiff
path: root/gtk2_ardour/midi_region_view.cc
AgeCommit message (Collapse)Author
2015-06-29Revert "replace two more instances of !! with implicit use of operator bool()"Paul Davis
This reverts commit e8eff9fb9c2fa6fc518404c2f9b731f8c28d3a23. OS X compiler gets confused by this change.
2015-06-29replace two more instances of !! with implicit use of operator bool()Paul Davis
2015-06-29Revert "use newly added operator bool() for Evoral::Beats rather than ↵Paul Davis
double-negation as boolean" This reverts commit a19902b52f08bf33c54e60dfb49c44a1c154f4c9. OS X compiler gets confused by this change.
2015-06-29Revert "replace two more instances of !! with implicit use of operator bool()"Paul Davis
This reverts commit e8eff9fb9c2fa6fc518404c2f9b731f8c28d3a23. OS X compiler gets confused by this change.
2015-06-29replace two more instances of !! with implicit use of operator bool()Paul Davis
2015-06-29use newly added operator bool() for Evoral::Beats rather than ↵Paul Davis
double-negation as boolean
2015-06-11Magnetic snap now works on note moves / resizes.nick_m
2015-06-11Make absolute snap the default snap.nick_m
- also fixes a couple of absolute snap bugs wrt midi notes.
2015-05-28Fix uninitialised variable.nick_m
2015-05-23Bring back contrained drag modifier with preference setting.nick_m
- this should work as before, but when applied to a button 1 drag, the constraint is in the first direction travelled.
2015-05-23Fix missing comment.nick_m
2015-05-23Fix inverted logic of SnapOff with snap modifiers pressed.nick_m
- also clean up, rename and comment some previous hanges.
2015-05-22Make note drags and resizes obey the disable sanp modifier.nick_m
2015-05-22More cleanupnick_m
- remove "no_magnets" ugh.
2015-05-17Relative Snap -make it activated by the tertiary modifier during drag.nick_m
Disabled/enabled with the shift key. no config stuff at all now. Move existing (strange) trim feature to primary + tertiary modifiers.
2015-05-17Relative snap - support magnetic mode (hackishly for now)nick_m
2015-05-16Relative snapnick_m
2015-03-29Fix mute of MIDI tracks with channel forcing.David Robillard
This moves MIDI channel filtering into a reusable class and moves filtering to the source, rather than modifying the buffer afterwards. This is necessary so that the playlist trackers reflect the emitted notes (and thus are able to stop them in situations like mute). As a perk, this is also faster because events are just dropped on read, rather than pushed into a buffer then later removed (which is very slow). Really hammering on mute or solo still seems to produce stuck notes occasionally (perhaps related to multiple-on warnings). I am not yet sure why, but occasional beats always.
2015-03-28Drag/Drop work-around midi note bleedingRobin Gareus
During DnD, the region uses the 'old/current' midi_stream_view()'s range and its position/height calculation. Ideally DnD would decouple the midi_stream_view() for the region(s) being dragged and set it to the target's range (or in case of the drop-zone, FullRange). but I don't see how this can be done without major rework. For now, just prevent visual bleeding of events in case the target-track is smaller.
2015-03-25Fix some strings incorrectly marked for translation.nick_m
My apologies to translators.
2015-03-14Only sound selected notes momentarily (#6142).David Robillard
This is debatable, the "sustained until mouse release" behaviour is handy sometimes, but this way seems like what most people probably want. Also, this "fire it and forget it and let it delete itself a bit later" thing with MidiPlayer makes me nervous. I guess it's unlikely someone manages to select a note then delete a track within 100ms, but, well...
2015-03-13Fix note visibility (#0006168).David Robillard
2015-03-05Handle edits while playing precisely.David Robillard
This avoids stuck notes if active notes are edited, but without stopping all active notes in the region on any edit as before. This implementation injects note ons in places that aren't actually note starts. Depending on how percussive the instrument is, this may not be desired. In the future, an option for this would be an improvement, but there are other places where "start notes in the middle" is a reasonable option. I think that should be handled universally if we're to do it at all, so not considering it a part of this fix for now.
2015-01-25midi note paste undo fix.Robin Gareus
2015-01-16Fix hidden notes at trimmed region start.David Robillard
2015-01-17Fix note resize double undo bug.nick_m
Newly drawn notes are selected. Clear midi note selection on Selection::set_state().
2015-01-13Don't reuse _optimization_iterator - fixes crash on multiple note delete undo.nick_m
2015-01-12Fix whitespace.David Robillard
2015-01-12Merge duplicated code.David Robillard
2015-01-12Fix crash when undoing note delete.David Robillard
2015-01-11Fix AutomationTrackItem rubberband click thinking it was unhandled.nick_m
Fix several other cases where a single mouse click could cause several (not nested) selection ops. Fix missing selection memento for midi notes and midi commands. Rename some variables. Fix random style issues.
2015-01-08Fix show MIDI regions using track color.David Robillard
2015-01-08Prevent note trim to zero length (shown as stuck).David Robillard
The reasonable value 1 tick doesn't seem to work here, presumably it gets lost in rounding conversion somewhere. Instead use a really small power of two reciprocal. Once we use actual beats and ticks we can fix this to be a minimum of one tick (the actual minimum length for a note).
2015-01-07MusicalTime => Beats.David Robillard
2014-12-30Fix stuck note display while recording.David Robillard
This doesn't make sense, but I'm okay with that.
2014-12-30Fix display of MIDI while recording.David Robillard
... almost. There are some artifacts when you zoom out while recording that I can't figure out, but whatever. Also fix performance issues caused by last attempt at rec display while zoom.
2014-12-29Fix key bindings for note trim/extend.David Robillard
2014-12-29Fix MIDI recording display when zoom/etc changes.David Robillard
2014-12-28Automation ghost notes for percussive hits.David Robillard
2014-12-28Show correct ghost hit for percussive tracks.David Robillard
2014-12-28Set new note velocity based on surrounding notes.David Robillard
2014-12-28Fix events for short notes at region start/end.David Robillard
2014-12-28Update note colors when model changes.David Robillard
2014-12-24Fix potential memory errors with note player.David Robillard
Seems unlikely, but if the event firing stuff is off, it could trigger the issue (#5502) and/or a possible memory leak.
2014-12-23Fix cursor update on nested entry.David Robillard
For example, if you're in a note and something about the mode changes, it's the underlying region context that needs to change. So, seems we need a stack of entry contexts to deal with this sort of thing. Switching in/out of smart mode still doesn't update immediately because we don't have the y-coordinate needed to update it.
2014-12-22move all (G)UI related configuration parameters into UIConfiguration, not ↵Paul Davis
RCConfiguration
2014-12-20Fix various cursor problems.David Robillard
Add a new scoped cursor system that makes it much harder to screw up and end up with stick cursors and so on.
2014-12-19more color/modifier tweaksPaul Davis
2014-12-18Use color modifiers for dynamic region styles.David Robillard
2014-12-18Fix copy paste of MIDI and track automation.David Robillard