pub enum HostNotification {
BusActivationRequested {
media_type: MediaType,
direction: BusDirection,
bus_index: i32,
active: bool,
},
DirtyChanged(bool),
OpenEditorRequested {
name: Option<String>,
},
GroupEditStarted,
GroupEditFinished,
UnitSelectionChanged {
unit_id: i32,
},
ProgramListChanged {
list_id: i32,
program_index: Option<i32>,
},
UnitByBusChanged,
ProgressStarted {
id: u64,
kind: ProgressKind,
description: Option<String>,
},
ProgressUpdated {
id: u64,
value: ProgressValue,
},
ProgressFinished {
id: u64,
},
ContextMenuRequested {
menu_id: u64,
parameter_id: Option<u32>,
x: i32,
y: i32,
items: Vec<ContextMenuItem>,
},
}Expand description
A control-plane action requested by a plugin through its host callbacks.
§Ordering
Notifications keep their order relative to each other, and so do the
ParameterEdits from Plugin::take_parameter_edits — but the two streams are buffered
independently, so their relative order is not preserved. In particular, the
GroupEditStarted / GroupEditFinished
bracket cannot be correlated with the edits that fell inside it: treat it as “the plugin is
currently in a grouped gesture”, not as a delimiter around specific parameter edits.
Variants§
BusActivationRequested
The plugin requests a routing change. The host decides whether to apply it with
Plugin::set_bus_active; draining this notification does not change bus state.
Fields
direction: BusDirectionInput or output.
DirtyChanged(bool)
The plugin changed whether its state needs saving.
OpenEditorRequested
The plugin asked the host to open an editor, optionally by view name.
GroupEditStarted
The plugin began a grouped edit.
GroupEditFinished
The plugin finished a grouped edit.
UnitSelectionChanged
The plugin selected a different unit in its own UI.
ProgramListChanged
A program list, or one program in it, changed in the plugin.
Fields
UnitByBusChanged
The plugin changed its bus/channel-to-unit assignments.
ProgressStarted
The plugin began a bounded progress operation.
Fields
kind: ProgressKindKind of work the plugin is performing.
ProgressUpdated
The plugin updated an existing progress operation.
Fields
value: ProgressValueNormalized progress in the inclusive 0.0..=1.0 range.
ProgressFinished
The plugin finished an existing progress operation.
ContextMenuRequested
The plugin populated a context menu and asked the host to display it.
After showing the menu, call Plugin::execute_context_menu_item for the chosen entry,
or Plugin::dismiss_context_menu if it was dismissed. Either call releases the
plugin-owned menu targets retained for this popup.