summaryrefslogtreecommitdiff
path: root/gtk2_ardour/midi_region_view.cc
AgeCommit message (Collapse)Author
2020-05-14MIDI: when drawing notes, leave selection containing only the just added notePaul Davis
This matches other DAWs and allows easy editing of just the last note, rather then all notes added since doing something else
2020-05-06remove debug outputPaul Davis
2020-05-05when creating new notes via MidiRegionView::create_note_at(), add note to ↵Paul Davis
selection
2020-05-04fix thinko in MidiRegionView::add_to_selection()Paul Davis
The existing code isn't wrong, but inefficient. If the selection is empty, then this is necessarily the first note, and cannot be present in the selection. So, don't search the std::set<> and then insert, just insert.
2020-05-01more improvements in visual representation of selected MIDI notes during ↵Paul Davis
(and not during) internal editing
2020-05-01change design of MidiRegionView::add_to_selection() so that the rubber-band ↵Paul Davis
select works again Adding the first note trigged Editor::set_selected_midi_region_view() which cleared the (newly added to) selection
2020-05-01attempt to properly manage MIDI note display of selected statusPaul Davis
Whether to display the selected outline depends on BOTH whether the note is selected, and whether we are in an internal editing mode.
2020-04-17remove debug outputPaul Davis
2020-04-16more sane design for MidiRegionView::nudge_notes()Paul Davis
Use nudge clock if snap/grid is disabled; use grid (and grid/4 if "fine" adjustment is chosen)
2020-04-16MidiRegionView no longer handles any keypresses or alters editor "note ↵Paul Davis
selection" 1. Alt is still handled to change drag behavior 2. Selection doesn't store notes unless they are part of the cut buffer, which means we should not be altering the note selection in the editor's selection object most of the time.
2020-04-04Update PatchChange when instrument/midnam changesRobin Gareus
2020-04-01Update MIDNAM handling in GUIRobin Gareus
* Always use InstrumentInfo for lookups. Remove name lookups that directly used gui_property() * Use set/get_gui_property() only to save/restore state, push custom selection to InstrumentInfo. * Only store custom selection, use unset for "default" default = plugin-provided (if available) otherwise general-midi
2020-01-28shortest note length after a drag-trim is 1 tick, not 1/512 beatsPaul Davis
2020-01-28correct computation of new note length after a front-drag-trimPaul Davis
2020-01-14fix 03c4335c1e20311 to use the correct test for zero lengthPaul Davis
That commit used the dangerous Beats::operator== (int) comparison, which only campares the beat portion
2020-01-11fix drawing of zero-length notesPaul Davis
Note that the result is too narrow to be manipulated, though it can be moved
2020-01-11use Note::end_time() == numeric_limits<Beats>::max() as the indicator that a ↵Paul Davis
note is in-process w.r.t. recording We used to use length() == 0, but this clashes with actual zero-length notes
2020-01-08prevent MIDI note starts being drawn earlier than their region startPaul Davis
2019-11-02rename all Evoral source from .(hpp|cpp)$ to .(h|cc)Paul Davis
2019-11-02various adjustments so that a MidiPlaylist gets re-rendered whenever it changes.Paul Davis
This may still be missing a few changes (i.e. they do not cause re-rendering)
2019-11-02alter where note resolution happens when a re-rendering is scheduled for a ↵Paul Davis
MIDI track
2019-09-20fix commented out decision on whether or not to hide/show sysexes in MIDI ↵Paul Davis
regions
2019-08-03Update GPL boilerplate and (C)Robin Gareus
Copyright-holder and year information is extracted from git log. git history begins in 2005. So (C) from 1998..2005 is lost. Also some (C) assignment of commits where the committer didn't use --author.
2019-08-01(Source List) Clean up the natural_position implementation (gtk2 part).Ben Loftis
2019-04-09Replace some more "samples" with "frames" (rectangles)Robin Gareus
2019-04-09Another round of whitespace fixesRobin Gareus
2019-04-08Revert more "frame/sample" replacementsRobin Gareus
- Coverage concerns rectangles (frames, not sample) - frame-handles are rectangles - layout container boxes are frames - inline display boxes are display_frame
2019-04-08Yet another "Rect frame" (not a sample)Robin Gareus
2019-04-08Frame as in "picture frame", not sampleRobin Gareus
2018-08-09Ignore scroll-wheel while dragging notes.Robin Gareus
Previously, dragging a MIDI note and scrolling with scroll wheel (to change velocity) made the note jump back to location before drag.
2018-07-27new_grid: The Return of the snap_to_X functions.Ben Loftis
We no longer assume that Snap always uses the visible ruler lines. If you want to snap to the grid, and ignore the users zoom scale, use SnapPref::SnapToGrid_Unscaled This fixes 2 (known) oversights: "snap region(s) to grid" and "regions whose start are left of the canvas edge".
2018-07-05remove more unused MIDI note colorsPaul Davis
2018-07-03make use-note-color-for-velocity much much more efficientPaul Davis
(by not invoking the global color change signal)
2018-07-03call Note::set_velocity() at an appropriate timePaul Davis
2018-02-17Fix a few warningsBen Loftis
2018-02-09new_grid: Rewrite of Snap and Grid. (squashed commit)Ben Loftis
Separate Snap from Grid. Lots of naming changes. Multiple simultaneous snap options allowed. Grid is one of the possible Snap options. Grid uses the same data as the rulers. Replace complicated tempo_lines with simple grid_lines. The Grid is zoom-scale-sensitive along with the rulers. If you are zoomed out, grid becomes coarser.
2018-02-09new_grid: MidiRegionView::motion should propagate thru RegionView, so ↵Ben Loftis
snapped_cursor is updated. This probably fixes other bugs as well.
2018-02-09new_snap: Snapped Cursor ( squashed commit )Ben Loftis
Snapped Cursor is a line that follows the edit point, and indicates where the operation will occur. This replaces and extends the line that appears with the Cut tool. New associated preferences: snap_threshold and show_snap_cursor.
2017-09-24fix header order and space alignmentPaul Davis
2017-09-24convert codebase to use Temporal for various time typesPaul Davis
2017-09-19fix unintentionally edited color/theme name from f2s editPaul Davis
2017-09-18globally change all use of "frame" to refer to audio into "sample".Paul Davis
Generated by tools/f2s. Some hand-editing will be required in a few places to fix up comments related to timecode and video in order to keep the legible
2017-09-18changes required to operate with the Evoral::Beats ticktime commitPaul Davis
2017-07-22Call Editor::abort_reversible_command() in MidiRegionView::abort_command()nick_m
Fixes broken undo stack if no changes occurred. Edit note dialog is currently the only user.
2017-05-14Fix compiler warning of unused variable.André Nusser
2017-03-29When adding a PC, use the channel given in the dialog.Robin Gareus
2017-03-06more linked midi region trim drag fixes.nick_m
- freeze the correct playlists on fiorst move. - only update the start offset of linked regions once the drag has finished.
2017-03-05rework percussive hit spraying.nick_m
- the spray is limited to the first entered note. - all new notes are selected (requires a selection change to MRV::create_note_at()
2017-03-04offset linked regions to compensate for negative start after trim drag.nick_m
- should fix 7105
2017-02-24also fix flying percussive hits while copy-dragging.nick_m