feat(banks): bindable multi-bank action family — create/rename/delete/evacuate/activate/move/copy + full-height toggles (B3)
This commit is contained in:
@@ -39,4 +39,31 @@ bool designViewHandleCommand(int command);
|
||||
// '-'-prefixed strings (per the contract's unload rule). Call once on rec==nullptr.
|
||||
void designViewUnregisterActions(reaper_plugin_info_t* rec);
|
||||
|
||||
// --- Multi-bank action family (Phase B3) -----------------------------------
|
||||
// The bindable action set that drives the multi-bank workflow: create / rename /
|
||||
// delete / evacuate a bank, activate a bank (direct pool/design-free + cycle), move /
|
||||
// copy the panel's selected samples into a bank, and the two vertical-split
|
||||
// full-height toggles. Every mutating action drives the B1 model on
|
||||
// g_session.book() and persists via g_session.saveToActiveProject() so the change
|
||||
// travels with the .rpp; the toggles flip the B4-rendered layout bit on the panel.
|
||||
//
|
||||
// Same registration/routing/unload contract as the Design View family above and the
|
||||
// same shared g_session. Kept a distinct trio (not folded into the Design View one)
|
||||
// because the two families are orthogonal pillars — but they share the single
|
||||
// hookcommand main.cpp owns; each family's Handle claims only its own ids.
|
||||
|
||||
// Registers the multi-bank family against `rec`. `session` is the live session (must
|
||||
// outlive registration). Call exactly once at load. Shares g_session with the Design
|
||||
// View family — pass the SAME session pointer.
|
||||
void bankRegisterActions(reaper_plugin_info_t* rec, ReaSamplerSession* session);
|
||||
|
||||
// Services one fired command for the multi-bank family. True iff it was one of this
|
||||
// family's ids (and handled); false otherwise so the caller's hookcommand keeps
|
||||
// looking. Safe for any command.
|
||||
bool bankHandleCommand(int command);
|
||||
|
||||
// Mirror-unregisters the multi-bank family with '-'-prefixed strings. Call once on
|
||||
// rec==nullptr (before g_session is torn down).
|
||||
void bankUnregisterActions(reaper_plugin_info_t* rec);
|
||||
|
||||
} // namespace reasampler
|
||||
|
||||
Reference in New Issue
Block a user