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- implementstruce_core::Editorusing 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§
- Plugin
Context - Context passed to
Editor::open. Carries:
Traits§
- Into
Element - Convert any truce-iced widget into an
Elementwith.el().