A baseview backend for imgui-rs
- Rust 100%
|
|
||
|---|---|---|
| .github | Update FUNDING.yml | |
| .vs | update baseview to newest rev | |
| examples | Merge branch 'main' into main | |
| src | Merge branch 'main' into main | |
| .gitignore | reserve on crates.io | |
| Cargo.toml | bump deps | |
| LICENSE | Initial commit | |
| README.md | match baseview's API | |
| screenshot.png | add screenshot | |
imgui-baseview
A baseview backend for imgui-rs.
Simple Usage Example
usebaseview::{Size,WindowOpenOptions,WindowScalePolicy};useimgui::{im_str,Condition,Context,Ui,Window};useimgui_baseview::{HiDpiMode,ImguiWindow,RenderSettings,Settings};fn main(){letsettings=Settings{window: WindowOpenOptions{title: String::from("imgui-baseview hello world"),size: Size::new(300.0,110.0),scale: WindowScalePolicy::SystemScaleFactor,},clear_color: (0.0,0.0,0.0),hidpi_mode: HiDpiMode::Default,render_settings: RenderSettings::default(),};letstate=();ImguiWindow::open_blocking(settings,state,// Called once in the constructor. This can be used to make any additional
// configurations to the `imgui::Context` struct.
|_context: &mutContext,_state: &mut()|{},// Called before each frame. Here you should update the state of your
// application and build the UI.
|run: &mutbool,ui: &Ui,_state: &mut()|{Window::new(im_str!("Hello world")).opened(run).size([300.0,110.0],Condition::FirstUseEver).position([0.0,0.0],Condition::FirstUseEver).build(ui,||{ui.text(im_str!("Hello world!"));ui.text(im_str!("こんにちは世界!"));ui.text(im_str!("This...is...imgui-rs!"));ui.separator();letmouse_pos=ui.io().mouse_pos;ui.text(format!("Mouse Position: ({:.1},{:.1})",mouse_pos[0],mouse_pos[1]));});},);}VST / LV2 / AU Plugins
Examples of how to use this library for audio plugins can be found here: