Paul Davis
dc8382c0b5
some enforcement of NoInsert KeyEnforcementPolicy
2021-11-18 16:44:16 -07:00
Paul Davis
e8baad9efa
more centralized code for deciding if a note is visible or note based on key
2021-11-18 15:41:59 -07:00
Paul Davis
d0cdd0c9db
somewhat functional menu to control KeyEnforcementPolicy
...
And yes, this should likely be global, not per track
2021-11-18 14:17:21 -07:00
Paul Davis
407936277f
NOOP: whitespace
2021-11-18 11:35:01 -07:00
Paul Davis
bfe52ca668
key enforcement: if NoInsert is in effect, MIDI mouse editing does not insert non-scale notes
2021-11-18 11:34:50 -07:00
Paul Davis
a3a8f355ee
key enforcement: use NoDraw to help decide whether or not to show ghost notes
2021-11-18 11:25:42 -07:00
Paul Davis
9f4bf02980
change type of MidiTrack's key enforcement to new enum type
2021-11-18 11:16:50 -07:00
Paul Davis
331377212e
tweak menu item names to be more reflective of common (western) practice
2021-11-18 10:36:31 -07:00
Paul Davis
eb0c1984de
midi region view: don't show ghost note if it is not in key
2021-11-18 10:36:07 -07:00
Paul Davis
2bb880aac0
midi track redisplay when mode/root is changed
2021-11-18 08:30:46 -07:00
Paul Davis
4648785935
prefer major/minor to ionian/aeolian (but show both names)
2021-11-18 08:30:46 -07:00
Paul Davis
6cdbd4174d
Implement mode/root context menus and modification methods to MidiTimeAxisView
2021-11-18 08:30:46 -07:00
Paul Davis
22efa2bf17
use color on MIDI tracks to show off-key notes
2021-11-18 08:30:45 -07:00
Paul Davis
15e4ba5123
add new color name for offkey notes
2021-11-18 08:30:45 -07:00
Ben Loftis
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
Ben Loftis
eebf3717e3
MIDI Draw: note-length-auto means 'use the Grid for note-length' (prior behavior)
2021-11-18 07:35:13 -06:00
Ben Loftis
93e68a5a00
MIDI Draw: provide a menu for Channel and Velocity
2021-11-18 07:35:13 -06:00
Ben Loftis
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
Paul Davis
c24cabead0
GUI changes to follow TempoMap::sample_at() API changes
2021-11-17 15:57:30 -07:00
Paul Davis
fd5594f831
use Editor::reassociate_metric_markers() before performing edits on tempo map
...
The objects referenced by markers point to the copy of the map held by the per-thread ptr. But
the edits must be done on a writable copy of the map. ::reassociate_metric_markers() fixes
the references to use the writable copy, so that when we pass references to the objects in the map
to the writable copy, it will find them and modify them (rather then ones in the previous
generation of the tempo map)
2021-11-17 12:16:39 -07:00
Paul Davis
18e851cd73
catch too-early use of PublicEditor::instance()
2021-11-17 12:16:39 -07:00
Paul Davis
710c5b9b78
do not use PublicEditor::instance() in MainClock, since these obejcts can exist before the editor
...
The AudioEngine on the other hand is created in the global libardour init method, so use that instead
2021-11-17 12:16:39 -07:00
Paul Davis
f0cd3b5c0c
editor: when the tempo map changes, update the per-thread pointer
...
TempoMap::use() merely returns the current per-thread tempo map
pointer; if a change is signalled, we should force an update
of the per-thread ptr via TempoMap::fetch()
2021-11-17 12:16:38 -07:00
Paul Davis
dd4e495d90
audioclock: use correct call for "right now" tempo display
2021-11-17 12:16:38 -07:00
Paul Davis
2735022357
audio_clock: fix uninitalized variable
2021-11-17 12:16:38 -07:00
Ben Loftis
f6adf9c897
MIDI Import: gtk part
2021-11-14 08:21:00 -06:00
Ben Loftis
4c472ca1c5
TriggerSlot: Remove Queued menu-item (for now)
2021-11-13 15:54:11 -06:00
Paul Davis
85fc3d5629
add missing file
2021-11-10 21:16:27 -07:00
Paul Davis
4f58a92c6d
show trigger/slot selection
2021-11-10 17:51:04 -07:00
Paul Davis
a9949f20e6
basic architecture for Trigger selection
...
This is all done in the GUI, using GUI objects. THe primary goal
here is to allow actions to be applied to selected triggers, so
there's no real need for a trigger aspect to libardour (core)
selection.
2021-11-10 16:37:15 -07:00
Paul Davis
0d96753364
remove unused variable
2021-11-10 11:55:20 -07:00
Paul Davis
605daf23f2
add default bindings for note shortening
2021-11-06 10:21:31 -06:00
Paul Davis
8cfdd0ca5b
add actions to provide access to note-shortening
2021-11-06 09:49:39 -06:00
Paul Davis
7fca55eeb5
Fix placement of drawn MIDI notes.
...
Important logic from 6.9 was either missing or incorrectly implemented. New
version is much simpler - we just use the RoundDownMaybe mode of round_to_bbt()
to ensure that the note start is always within the current grid even if the
mouse is more than halfway "through" it.
2021-11-04 18:27:02 -06:00
Paul Davis
2d9eb6ec81
Fix error in drawing length of ghost MIDI notes in note drawing mode
2021-11-04 18:25:45 -06:00
Paul Davis
efdd3e86c3
remove unused variable
2021-11-04 13:59:43 -06:00
Paul Davis
af2af29c95
remove Kiwi constraint-based packing code from canvas library and users (GUI version)
2021-11-04 11:25:56 -06:00
Paul Davis
0c5d41039a
more scene triggering actions
2021-11-03 18:44:31 -06:00
Paul Davis
aba0de91f8
add missing file
2021-11-01 13:40:23 -06:00
Paul Davis
b7ce131557
triggerboxUI: skeleton for triggerbox bindings and actions, include triggering of scene 1
2021-11-01 12:11:57 -06:00
BrunoVernay
e16ac4b036
Typo in comment: paramater
2021-10-30 23:02:35 +02:00
Paul Davis
65f85dfdfe
triggerboxUI: GUI elements to load slots from selected regions
2021-10-24 09:25:49 -06:00
Paul Davis
28d8ad1ede
triggerbox UI: no need for a render method
2021-10-19 19:08:52 -06:00
Paul Davis
9ed9544f87
triggerbox UI: indicate clip playing status with full-height, shaded fill color
2021-10-19 14:41:05 -06:00
Paul Davis
ed823defe0
triggerbox_UI: mark text for size-allocate-based resizing
2021-10-19 10:55:10 -06:00
Paul Davis
d129a64890
when GUI scale changes, drop Canvas::Text font size maps
2021-10-19 10:54:51 -06:00
Paul Davis
ccc1fd8a2d
remove some debug output
2021-10-17 21:18:06 -06:00
Paul Davis
291adf11cd
triggerbox UI: add two more quantization settings
2021-10-17 17:58:48 -06:00
Paul Davis
ae83d8121d
triggerbox UI: size_allocate() for trigger name text
2021-10-17 17:58:34 -06:00
Paul Davis
82ba897be6
triggerbox UI: some color work
2021-10-17 17:58:08 -06:00