This code only worked for port groups that themselves (the specific group
instance) listed their designations. This worked with LSP, which redundantly
duplicates the elements from the group's class for some reason, but not with
other plugins like MDA which simply refer to a standard group like
<http://lv2plug.in/ns/ext/port-groups#StereoGroup>.
This does require the specification data to be loaded from the LV2 path (maybe
why LSP does that?), but that's generally expected for anything LV2 to work.
* show _region_line dropdown and label (previously ArdourHSpacer
was packed in their place)
* add spacer at the bottom of the window to not prevent
spreading out of clocks or other elements.
Strumming now happens to notes that start at the same time, based on
note value. Additionally, rather than moving notes, the start times get
moved so that they end at the same time. Any notes that get cut down to
nothing (or less) are given a length of one tick while maintaining the
same end time.
* fix HTML </br> -> <br/>
* add a doctype (render in normal mode, not quiksmode)
* add CSS to match prior display from quicksmode
* add pagebreak before action-list
This fixes bug, when a button has both a controllable and
a toggle action assigned. Previously only the visual state
was updated. e.g. monitor section mute button.
When "cut all" was toggled (e.g. Control surface, or a Lua script:
`Session:monitor_out():monitor_control():set_cut_all(true)`,
The action state itself remained unchanged. Also the button
in the application remained unchanged since that button does
not :watch() the controllable.
This fixes a crash when removing and re-adding regionFX.
Removing all FX clears the _readcache BufferSet
(see AudioRegion::remove_plugin).
BufferSet::clear() calls _buffers.clear(); leading to a assert/crash
when adding a new regionFX plugin which calls BufferSet::ensure_buffers.
Filling the CC dropdown menus of the editor's pianroll
bottom attachment can take ages.. So only do that when
the bottom pane is actually visible.
This will need more work, since it's still slow, and the
menu is also not correctly using sub-menus.
* Only show progress bar when downloading/installing
* Don't allow re-install
* Scale progress bar width with UI
* make sure target clip library folder exists
Found via `codespell -q 3 -S "*.pdf,*.po,./.git,*.tosc,./waf,./share/patchfiles,./libs,./msvc_extra_headers,./share/web_surfaces,*.patch" -L acount,addin,ane,ba,buss,busses,caf,capela,devine,disconnectin,discreet,doubleclick,envolution,filetest,fo,ghandi,homs,hsi,layed,maschine,mis,nd,ontop,pass-thru,removeable,retrn,ro,scrollin,sectionin,seh,siz,sord,sur,te,trough,ue,vie,wth`
- Implement strum_notes functionality to apply progressive
timing offsets to selected MIDI notes
- Provides guitar-style strumming for creating realistic
note sequences
The feature applies 1/32 beat timing offsets progressively
to selected notes, creating a strummed effect where notes
play in sequence rather than simultaneously.
Since we have only 1 type of snap (the grid, which is BBT based always), this
method doesn't need as much of the baggage as the equivalent Editor method
The history is cleared separately, we can remain connected to the signal. Nothing will happen to it that
we don't control, since we own the UndoHistory object
CueEditor::catch_pending_show_region() calls ::set_region
which calls CueEditor::unset(false). This reset _track.
Also PianorollWindow::set() calls set_track() before set_region(),
the latter also reset CueEditor::_track.
This fixes the Solo button in the Pianoroll window, and
probably some other things, too.
Mouse-mode is set after the the session sets CoreSelection
in the backend, and can clear valid selection.
Note: Region Selection (if any) is saved in instant.xml
and set during first_idle, which usually still happens
from `load_session_stage_two() -> flush_pending()`.