3c03e4951e
Use updated temporal API 2/2
2021-12-11 15:51:31 +01:00
f584335f28
follow Beats API change in MidiRegionView::paste_internal()
2021-11-29 21:50:29 -07:00
60e522f4ee
MIDI Program Changes: Fix some thinkos in patch-change flag locations
...
Program Changes are stored as an offset from the 'source' start, and must be translated to/from region time.
Better locating of patches wrt the grid:
You can't assume time_to_pixel is steady across the timeline
* calculate position of the patch-change flag
* calculate region start position, and set flag's x offset from there
also: consolidate patch-location code into display_patch_changes()
2021-11-23 14:14:35 -06:00
bc6766fc3f
midi region view: fix crashes when adding notes
...
A region may have no notes, or none in the correct time range. Finding
a note to get channel or velocity info from may fail
2021-11-18 10:03:34 -07:00
252ae56a08
MIDI Draw: change behavior regarding MIDI Channel of new notes
...
When adding a note, use these criteria to choose the channel number:
* if the user has explicitly specified a note in the pulldown, use that
* if the user has AUTO selected and we are in a region, choose the nearest note's channel (consistent with velocity behavior)
* as a fallback, query the track for its channel-filter (old behavior)
2021-11-18 08:23:08 -06:00
93e68a5a00
MIDI Draw: provide a menu for Channel and Velocity
2021-11-18 07:35:13 -06:00
2a6da0113f
MIDI Draw: Provide a menu to explicitly select note-length
...
ToDo: 3,5,7's? keyboard shortcuts?
2021-11-18 07:35:13 -06:00
2d9eb6ec81
Fix error in drawing length of ghost MIDI notes in note drawing mode
2021-11-04 18:25:45 -06:00
754230921d
there is no Properties::position any more (GUI)
...
Position is a part of a length property (a duple specifying
"duration AT position", and there is no distinct property
for just the position itself
2021-09-25 16:49:51 -06:00
dcd3766c33
fix semi-replicated code (post rebase conflict resolution)
2021-08-13 12:51:36 -06:00
cedf875a42
fix timeline types
2021-08-13 12:51:36 -06:00
fb66695081
fix (and improve) drawing of "ghost note" drawn while mouse pointer moves in MidiRegionView in draw mode
2021-08-13 12:51:35 -06:00
1868c4cac5
fix drawing percussive notes in MidiRegionView following nutempo SNAFU with relative time calc.
2021-08-13 12:51:35 -06:00
831c085b2e
remove MidiRegionView::snap_sample_to_grid_underneath() and replace with calls directly into Editor snap method
2021-08-13 12:51:35 -06:00
37eea1da29
fix brace style
2021-08-13 12:51:35 -06:00
48ac681b03
fix note-resizing-at-front, change variable names
2021-08-13 12:51:34 -06:00
21e6f1cf50
(mostly) fix note drag creation drawing
2021-08-13 12:51:34 -06:00
f328fdc56a
adapt to DoubleableBeats and so forth (gui edition)
2021-08-13 12:51:32 -06:00
dee71c0a97
mostly fix region- and note-create drags
2021-08-13 12:51:32 -06:00
313d957eaf
MidiRegionView: restore functioning (?) of snap_sample_to_grid_underneath()
2021-08-13 12:51:31 -06:00
9412130c01
use cleaned up Temporal ::quarters*_at* API (GUI edition)
2021-08-13 12:51:31 -06:00
cce695d33a
changes required by fixing ambiguities in timepos_t/timecnt_t API (GUI edition)
2021-08-13 12:51:31 -06:00
18d64f0402
change all Region::nt_*() methods to names without the nt_ prefix (GUI version)
2021-08-13 12:51:30 -06:00
3c00fab75e
remove/hide Session::tempo_map() and use TempoMap::use() instead (thread local shared ptr) (GUI edition)
2021-08-13 12:51:30 -06:00
7ef11dc698
continued work on using new tempo map API (before switch to RCU)
2021-08-13 12:51:30 -06:00
2a08e4bdaa
continued work on timeline types conversion. in theory, just editor_ops.cc remains
2021-08-13 12:51:29 -06:00
5b2a435e02
getting editor_drag.cc to compile
2021-08-13 12:51:29 -06:00
9d69fa3820
another day or two's work on timeline type conversion
2021-08-13 12:51:29 -06:00
7433bc27e0
intermediate, unfinished snapshot of ongoing timeline types work on GTK GUI
2021-08-13 12:51:29 -06:00
0a469527f1
updated Temporal::Beats ... GUI edition
2021-08-13 12:51:28 -06:00
f2e2cce343
fix an unfortunate "side-effect" of the frame->sample renaming
2021-08-13 12:51:27 -06:00
1c0bef3f85
Remove redundant checks
...
update_ghost_note() can only be called with a valid, non-null
_ghost_note. Explicit checks trigger clang static analyzer to
report false positives, since _ghost_note is unconditionally
used in this method as well.
2021-06-29 01:53:56 +02:00
c46410a1b0
MIDI region extend-selection should select all after start of selection, not all after end of selection
2021-06-08 08:31:41 -06:00
11cb981e30
add extend_selection() to MIDI region bindings; expose invert-selection also
2021-06-08 07:40:54 -06:00
f4f9d76e53
Option to how x-run markers in regions
2021-02-14 16:22:35 +01:00
7cf435a876
deselect everything when the first MIDI note is selected
...
See comments in code for more information
2021-01-18 16:07:20 -07:00
6bd12a4e83
clearing note selection in internal edit mode also deselects regions
2021-01-18 16:07:20 -07:00
a307cc602c
remove duplicate initialization of PBD::DEBUG::Selection
2021-01-14 11:25:29 -07:00
20bdc394f4
remove debug output unintentionally committed in 14318dd34
2021-01-03 18:17:14 -07:00
14318dd342
use larger font for bars on BBT ruler
2021-01-03 16:50:18 -07:00
8c2a460b7d
NO-OP: prefer RAII unwind
2020-08-09 22:08:00 +02:00
4ad1c19166
Special case MIDI note selection auditioning - #8358
...
This adds a few exceptions to the general preference
"Sound MIDI notes as they are being selected in the editor".
* Select all no longer plays _all_ notes.
* Remain silent when selection is inverted or a range is selected.
* Play no sound when a saved selection is restored on session load.
2020-08-09 20:37:56 +02:00
eecb498a70
restore apparent thinko that removed the effect of "editable region" transparency for MIDI regions
2020-05-16 08:29:37 -06:00
2f12815565
MIDI: when drawing notes, leave selection containing only the just added note
...
This matches other DAWs and allows easy editing of just the last note, rather then all
notes added since doing something else
2020-05-14 00:03:42 -06:00
2e2ca85131
remove debug output
2020-05-06 09:53:55 -06:00
f546b38f42
when creating new notes via MidiRegionView::create_note_at(), add note to selection
2020-05-05 18:00:41 -06:00
f6496524a4
fix thinko in MidiRegionView::add_to_selection()
...
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-04 18:48:17 -06:00
11ec81f4c2
more improvements in visual representation of selected MIDI notes during (and not during) internal editing
2020-05-01 22:28:21 -06:00
8556560eca
change design of MidiRegionView::add_to_selection() so that the rubber-band select works again
...
Adding the first note trigged Editor::set_selected_midi_region_view() which cleared
the (newly added to) selection
2020-05-01 22:27:50 -06:00
044be53616
attempt to properly manage MIDI note display of selected status
...
Whether to display the selected outline depends on BOTH whether the note is
selected, and whether we are in an internal editing mode.
2020-05-01 17:39:13 -06:00