docs: reflect ME-import → new-instrument behavior
Update ingest surface (2) + instrument_drop_win entry points in CLAUDE.md; update the Ingest-through-the-bank spec in CONTEXT.md to shipped behavior.
This commit is contained in:
+7
-4
@@ -1586,14 +1586,17 @@ headers):**
|
||||
capture inputs) and assigns the resulting `Sample` id to the target instance. **It never
|
||||
inserts a timeline item** — the capture/placement separation is load-bearing; assignment
|
||||
is a bank-index + instance-selection act, not a placement.
|
||||
- **Media Explorer import → bank → assign.** The Media-Explorer surface is **thin**:
|
||||
- **Media Explorer import → bank → new instrument.** The Media-Explorer surface is **thin**:
|
||||
`OpenMediaExplorer` (open/select a file) and `MediaExplorerGetLastPlayedFileInfo` (read the
|
||||
*one* last-played/selected file path + its selection range/pitch/vol/rate) are the whole
|
||||
contract. There is **no** enumerate-selected-files and **no** register-a-drop-handler-on-
|
||||
the-Media-Explorer API. So ME import is **single-file, pull-on-action** — an action fired
|
||||
while a file is selected in the ME — not a push/drop from inside the ME. **Spike:** confirm
|
||||
`MediaExplorerGetLastPlayedFileInfo` returns a usable path+range for a merely-*selected*
|
||||
(not-yet-played) file, or whether a play is required first.
|
||||
while a file is selected in the ME — not a push/drop from inside the ME. **Shipped behavior
|
||||
(RS5k parity):** after importing the file into the active bank, the action stands up a NEW
|
||||
ReaSampler 9000 instrument on a NEW track (named after the sound) pre-loaded with just that
|
||||
sound (`createTrackWithInstrument` in `instrument_drop_win`). No `assignment_request` is
|
||||
written; it never touches a live instance's selection. Undo-wrapped: track-create + persist +
|
||||
FX-add + inject = one Ctrl-Z.
|
||||
- **Drag-and-drop onto ReaSampler surfaces.** REAPER exposes **no** drag-drop registration
|
||||
API. Drop handling is on ReaSampler's *own* HWNDs via SWELL/Win32 (`WM_DROPFILES` /
|
||||
`IDropTarget` on the docked `bank_panel` HWND — the surface the panel already owns) → ingest
|
||||
|
||||
Reference in New Issue
Block a user