Phase 34: add snap grids, MIDI velocity editing and track instrument menus
This commit is contained in:
parent
d800a6392e
commit
4873b70672
14 changed files with 481 additions and 29 deletions
|
|
@ -960,6 +960,35 @@ See WORKSPACE.md for the workflow, tests and limits.
|
|||
|
||||
---
|
||||
|
||||
## Phase 34 — Grid, Clip Editing and Track Instrument Controls
|
||||
|
||||
### Goal
|
||||
Expose common DAW editing actions directly in the flat workspace: selectable
|
||||
snap, MIDI clip double-click, individual note velocity and track instruments.
|
||||
|
||||
### Tasks and acceptance criteria
|
||||
- [x] Draw bar/beat/subdivision grid lines and expose a sequencer Snap dropdown.
|
||||
- [x] Offer Off, straight, triplet, half-note and bar divisions; synchronize the existing snap menu.
|
||||
- [x] Snap clip moves and both trim edges to absolute grid positions, including off-grid clips.
|
||||
- [x] Open the selected MIDI clip's piano roll on left-button double-click without moving it.
|
||||
- [x] Add a fixed velocity lane and selected-note slider with 1..127 validation and one undo step per edit.
|
||||
- [x] Keep coincident chord notes individually editable and preserve timing/pitch/channel.
|
||||
- [x] Add a dropdown to every non-bus track for built-in sine, project instruments and explicit plugin loading.
|
||||
- [x] Preserve track identity through reorder, undo, clear and project reload; retain candidate failure rollback.
|
||||
- [x] Keep controls flat, retain current project format and verify builds, GUI regressions and releases.
|
||||
|
||||
### Implementation status
|
||||
Implemented in the C++ GUI over existing C model APIs. Snap preferences are
|
||||
session UI state; note velocity and track instruments already persist in v12.
|
||||
The project instrument list is built from existing assignments, with Load plugin
|
||||
for other trusted binaries; automatic disk scanning is not introduced.
|
||||
At low zoom the visual grid coarsens for readability while snap remains exact to
|
||||
the selected tick division. Off uses pointer/model tick precision. MIDI velocity
|
||||
is a performance value, not a per-note dB gain stage; third-party instrument
|
||||
patches control its audible response. See WORKSPACE.md and MIDI.md.
|
||||
|
||||
---
|
||||
|
||||
## Recommended Execution Order
|
||||
|
||||
Reorder the phases when the audit reveals a blocking dependency. Do not mark a phase complete merely because code exists: its acceptance criteria must be demonstrated by builds, tests, or documented manual verification.
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue