Paul Davis
130cfd2e08
catch hscroll in pianoroll appropriately
...
Some thought might be put into thinking about why/whether EditingContext
ought to do this instead, since Editor does almost the same thing, but
without using the horizontal_adjustment owned by EditingContext
2025-05-02 09:40:38 -06:00
Paul Davis
e348607976
limit length of controller names on user-defined automation buttons in pianoroll
2025-05-01 09:33:43 -06:00
Paul Davis
cc5e110216
change API of build_controller_menu() to allow clamping button name length
2025-05-01 09:33:43 -06:00
Robin Gareus
868d8c1d51
Document and fix monitoring-states
...
See https://manual.ardour.org/appendix/monitor-modes/
This fixes #11 , #27 (auto-in, rolling, track armed, but session
disarmed)
2025-05-01 17:15:57 +02:00
Paul Davis
3600a6ffd0
fix computation of note position for HitCreateDrags
2025-04-30 18:07:55 -06:00
Paul Davis
7e75162840
allow MIDI note range (vertical) zoom to work with no selected notes if velocity-scroll is disabled
2025-04-29 10:50:16 -06:00
Paul Davis
d68472115f
in MidiViews, primary-scroll is always left unhandled so that horizontal zoom works everywhere
2025-04-29 10:49:34 -06:00
Paul Davis
3cc3b867dc
NO-OP: add a comment about requiring a region to be selected for MIDI scrolling
2025-04-29 10:47:51 -06:00
Paul Davis
f28e13fcdb
NO-OP: fix named class type in a comment
2025-04-28 16:59:12 -06:00
Paul Davis
b874bbfbf0
use instrument info for note names in pianoroll (canvas-based) header
2025-04-28 16:58:57 -06:00
Paul Davis
1a8445d6a1
MidiViewBackground now has a virtual method to access instrument info
2025-04-28 16:58:29 -06:00
Paul Davis
fece4f0ca8
fix thinko in handling of cue page context menus
...
Context menus should (unless there is a very strong reason otherwise) be
popped up on button press, not button release. In addition Gtk::Menu::popup()
should be given the button ID of the button used, so that it can manage
both styles of menu interaction (press/drag/release and press/release/drag/press)
2025-04-28 14:26:15 -06:00
Paul Davis
975b01060a
enforce a 1 octave minimum note range in MidiViews
...
May revisit this to allow less in the future
2025-04-28 08:58:25 -06:00
edwar4rd
747be87974
Fix typo in ardour.keys.in causing spacebar to not work
2025-04-28 16:55:54 +08:00
Robin Gareus
cb8dd39f31
Allow SchedRR for I/O threads (fix copy/paste typo)
2025-04-26 16:11:51 +02:00
Robin Gareus
89003b1708
Only show Surround settings in group dialog when available at compile time
2025-04-25 21:06:30 +02:00
Paul Davis
8d7b4f7991
fixes so that cursor changes inside a MidiRegionView work as intended
...
They already worked in the PianorollMidiView, because that hands off enter/leave events
to the parent EditingContext (a Pianoroll). But MidiRegionView and Editor were
not interacting in the same way, so leaving a note object would not cause the Editor
to do the right thing with the cursor.
2025-04-25 11:28:45 -06:00
Paul Davis
52996e7a8d
fix thinko when setting MIDI trigger first/last event indices
...
Unclear why I use this pattern when the change here uses the more normal way
of finding the upper/lower of some values. Either way, the code as it was would
skip the first event in a MIDI trigger (most of the time, anyway)
2025-04-24 16:41:49 -06:00
Paul Davis
c45103c1d7
ensure zoom of an empty pianoroll matches that when an empty slot is shown
2025-04-24 12:07:19 -06:00
Paul Davis
5526880ac8
do not create an empty region for a cue slot when it is selected for editing
...
There's an assumption that slots with regions cannot be recorded into,
so adding a region to an empty slot makes it impossible to record to that
slot.
Create the region at the appropriate point during a NoteCreateDrag.
This may also be needed for some automation drawing drag operations.
2025-04-24 12:07:19 -06:00
Paul Davis
a835de7e08
add a comment to explain a default length
2025-04-24 12:07:19 -06:00
Paul Davis
ce236c49ca
when building a tempo map for the Pianoroll, consider using the main tempo map
...
This is only relevant when a Pianoroll is used to edit a timeline region.
2025-04-24 12:07:19 -06:00
Paul Davis
a582255559
remove another unnecessary call to Pianoroll::zoom_to_show()
2025-04-24 12:07:19 -06:00
Paul Davis
33943157c5
remove debug output
2025-04-24 12:07:19 -06:00
Paul Davis
008c624a2d
no need for a call to zoom_to_show() after set_region()
...
Pianoroll::set_region() calls that method itself.
2025-04-24 12:07:19 -06:00
Paul Davis
6f45a9f9ac
use new spacebar action in key bindings
2025-04-24 12:07:19 -06:00
Paul Davis
9974218c05
add Transport/SpacebarAction action to make spacebar more useful when clip recording
2025-04-24 12:07:19 -06:00
Paul Davis
3918fea26f
provide Session::armed_triggerbox() API
2025-04-24 12:07:19 -06:00
Paul Davis
a41699737f
fix bug in lifetime of MidiView::_ghost_note
...
As noted in 8b389ee829 , we now clear the _note_group container
before any other Note items might be deleted. But since this
may delete the _ghost_note, we have to be sure to reset
that to a null ptr to avoid a double-free later during
~MidiView
2025-04-24 12:07:19 -06:00
Paul Davis
86ef6a5e59
remove debug output
2025-04-24 12:07:19 -06:00
Paul Davis
a3213de634
NO-OP: remove double semicolon
2025-04-24 12:07:19 -06:00
Paul Davis
02aeb3895f
NO-OP: newline/whitespace/brace
2025-04-24 12:07:19 -06:00
npt-1707
dd0de15269
Fix potential vulnerable cloned functions: Bug: Lua can generate wrong code when _ENV is <const>
2025-04-24 13:05:49 +02:00
npt-1707
edf2ce7cfe
Fix potential vulnerable cloned functions: Save stack space while handling errors
2025-04-24 17:06:24 +08:00
Robin Gareus
5f1bea0b6b
Fix rec-arm disable
...
This broke in 91f9561958 , when the condition for clip
recording was added.
2025-04-19 18:40:50 +02:00
John Emmas
d285ff365e
Add a visibility specifier that's now needed
...
Following the introduction of 'Pianoroll::region_prop_change()' (commit #29833d75c9 ) the operator<< (for PBD::PropertyChange) now needs to be visible outside of libpbd
2025-04-19 13:33:36 +01:00
Paul Davis
292e722758
use bg[ACTIVE] for scrollbar troughs, like all other GTK engines
2025-04-18 15:52:07 -06:00
Robin Gareus
729622204f
Make scrollbar less prominent with default theme
2025-04-18 23:37:15 +02:00
Robin Gareus
30e84a49ba
Fix Wreorder
2025-04-18 23:06:41 +02:00
Paul Davis
29833d75c9
add a horizontal scrollbar to the pianoroll
2025-04-18 15:00:55 -06:00
Paul Davis
743657e265
simplify scrollbar slider drawing code
...
No more pattern for the slider, brighter shade for prelight,
and keep prelight color even when widget is active
2025-04-18 15:00:55 -06:00
Paul Davis
693565c131
use new color alias name for theme spec of scroll bar sliders (plus comments)
2025-04-18 15:00:55 -06:00
Paul Davis
e89e4ac5c5
add new color alias for scrollbar sliders (neutral:mid for all exisitng themes)
2025-04-18 15:00:55 -06:00
Robin Gareus
e87676105f
Fix videotimeline - initialize height
...
Previously this worked since rulers were initialized first, setting
the videtimeline's height. After the ruler overhaul the
videotl_bar_height was not set until after the ruler
is shown. This lead to requesting some insanely large video frame...
2025-04-18 04:40:37 +02:00
Robin Gareus
2581a841e0
Minimize session dialog code changes with downstream projects
2025-04-17 15:54:30 +02:00
Paul Davis
2c69671ee3
if an empty slot is selected on the cue page, set up a new region to edit
2025-04-16 20:44:11 -06:00
Paul Davis
ef0a8ba524
allow a trigger slot to use an empty region
...
hopefully there are no complications from this :(
2025-04-16 20:43:37 -06:00
Paul Davis
9415dad9cc
fix the visible channel in a pianoroll if the model has no channel data
2025-04-16 20:43:10 -06:00
Paul Davis
91f6245f44
experiments for the ardour startup dialog
2025-04-16 12:22:57 -06:00
Paul Davis
7cf63d1d46
triggebox: random extra DEBUG_TRACE output
...
Also, if a trigger is already stopped, ::shutdown_from_fwd() now does
nothing at all
2025-04-16 12:05:59 -06:00