pub fn create_egui_editor<T, B, U>(
    egui_state: Arc<EguiState>,
    user_state: T,
    build: B,
    update: U
) -> Option<Box<dyn Editor>>where
    T: 'static + Send + Sync,
    B: Fn(&Context, &mut T) + 'static + Send + Sync,
    U: Fn(&Context, &ParamSetter<'_>, &mut T) + 'static + Send + Sync,
Expand description

Create an Editor instance using an [egui][::egui] GUI. Using the user state parameter is optional, but it can be useful for keeping track of some temporary GUI-only settings. See the gui_gain example for more information on how to use this. The EguiState passed to this function contains the GUI’s intitial size, and this is kept in sync whenever the GUI gets resized. You can also use this to know if the GUI is open, so you can avoid performing potentially expensive calculations while the GUI is not open. If you want this size to be persisted when restoring a plugin instance, then you can store it in a #[persist = "key"] field on your parameters struct.

See EguiState::from_size().