Skip to main content

Crate truce_iced

Crate truce_iced 

Source
Expand description

Iced GUI backend for truce plugins.

An alternative GUI backend that replaces the built-in tiny-skia/wgpu renderer with iced, giving plugin authors access to a full retained-mode widget toolkit.

§Usage Modes

§Auto mode - zero custom code

fn editor(&mut self) -> Option<Box<dyn Editor>> {
    let layout = self.layout();
    Some(Box::new(IcedEditor::from_layout(self.params.clone(), layout)))
}

§Custom mode - full iced control

fn editor(&mut self) -> Option<Box<dyn Editor>> {
    Some(Box::new(IcedEditor::<_, MyIcedUi>::new(
        self.params.clone(),
        (600, 400),
    )))
}

Re-exports§

pub use editor::AutoPlugin;
pub use editor::IcedEditor;
pub use editor::IcedPlugin;
pub use param_cache::ParamCache;
pub use param_message::Message;
pub use param_message::ParamMessage;
pub use widgets::knob;
pub use widgets::knob;
pub use widgets::meter;
pub use widgets::meter;
pub use widgets::param_dropdown;
pub use widgets::param_selector;
pub use widgets::param_slider;
pub use widgets::param_toggle;
pub use widgets::xy_pad;
pub use widgets::xy_pad;

Modules§

auto_layout
Automatic iced UI generation from a GridLayout.
editor
IcedEditor - implements truce_core::Editor using iced for rendering.
font
Font loading for iced renderers.
param_cache
Cached parameter state for iced widgets.
param_message
Message types for parameter and plugin communication.
platform
Platform glue for truce-iced.
theme
Theme bridge between truce-gui colors and iced Theme.
widgets
Widget library for iced-based plugin UIs.

Structs§

PluginContext
Context passed to Editor::open. Carries:

Traits§

IntoElement
Convert any truce-iced widget into an Element with .el().