v0.9.0
Thanks everyone for your patience with this long overdue release!
There has been a good chunk of work done on imgui-rs since the last release. For a complete list, see the CHANGELOG.markdown
in the main repository
A few key changes:
Building everything of Ui
The aim is to make the API more consistent and easier to discover functinality by having widgets be created consistently.
For example, previously a button was made by ui.button(...)
but a slider made by imgui::Slider::new(...).build(ui)
- meaning both appeared in different sections of the docs/auto-completion, so easy to miss. Now a slider is now made via ui.slider(...)
also
This means some commonly used widgets like Window
change - although a tiny bit tedious, it is hopefully a fairly stight-forward syntax change, which can be done with some search-and-replace (change imgui::Window::new(...)
to ui.window(...)
and remove the ui
argument from build)
This is still somewhat a work-in-progress (some items may still be created via separate builder structs), but the aim is to transition everything to Ui
Docking
The upstream docking branch is now available, enabled via the docking
feature. Higher-level, safe Rust bindings for this will come in a future release, for now these can be used via the imgui-sys
crate
Various version updates
Dear ImGui is now 1.86 - this isn't the latest release, but it was better to release now and get imgui-rs back to a more regular release cycle
Similarly there is updates to latest glium, winit
Automatic notes
What's Changed
- Fix glow renderer doc links by @toyboot4e in #532
- disabled debug_message_insert_support on apple by @sanbox-irl in #534
- Add Style accessor functions to Ui by @lwiklendt in #526
- fix typo in Ui::button documentation by @malikolivier in #535
- Window::new -> Ui::window attempt 2 by @dbr in #537
- Switch [f32; _] types in the public api to
mint
equivalents by @sanbox-irl in #536 - Fix update_delta_time() assertion fail from zero Duration by @dzil123 in #479
- Remove the lifetime from Ui by @sanbox-irl in #539
- Use ControlFlow:Poll in glow renderer examples by @dbr in #545
- Implement
imgui-sdl2-support
crate. by @NightShade256 in #541 - Add
input_scalar
and allow setting float input precision by @EmbersArc in #544 - Add basic polyline methods to draw list by @dbr in #550
- Fix a bug in SDL 2 support crate (#549) by @NightShade256 in #552
- menu rewrite by @sanbox-irl in #551
- Docking as a Feature Mk2 by @dbr in #557
- Test docking feature in CI by @dbr in #567
- Fix incorrectly copy-pasted documentation for InputTextFlags.CALLBACK_EDIT by @Sejsel in #572
- Add a StyleVar for CellPadding by @Sejsel in #571
- Add missing fields to memory layout tests by @Sejsel in #574
- Update xflags to 0.2.x by @thomcc in #577
- Update slider example #565 by @dbr in #568
- Remove NO_ALPHA flag insertion in ColorPicker4::build by @kazatsuyu in #579
- Make sure docs get generated for optional features as well by @Jasper-Bekkers in #573
- Fix DPI scaling in examples by @dbr in #570
- Support winit-0.26 by @cwfitzgerald in #583
- Minor fixes to README by @LoipesMas in #591
- Fix glow renderer not working for minor version = 0 by @PieKing1215 in #599
- Fix up glob patterns in imgui-sys by @dbr in #597
- Upgrade Dear ImGui 1.84.2 -> 1.86 by @dbr in #600
- Make ui.popup* methods consistent by @dbr in #603
- Refactor Slider to work under new Ui-based architecture by @imlazyeye in #607
- winit-support: fix dpi handling in attach_window() when not in defaul… by @filnet in #608
- Color upgrade by @sanbox-irl in #614
- Winit 0.26 by @sanbox-irl in #615
- Return Bool in SDL2 if handled event by @sanbox-irl in #616
- Remove im_str! usage from examples in docs by @Sejsel in #618
- imgui: Upgrade parking_lot to 0.12 with windows-rs bindings by @MarijnS95 in #624
- imgui-winit-support: Build-test documentation example and fix compiler errors by @MarijnS95 in #625
- Clipper bugfix and iterator interface by @dbr in #626
- Handle window focus lost event by @dbr in #628
- TextCallbackData::selection causes problems when selecting from right to left by @wcassels in #635
- Removing support for old winit versions by @dbr in #638
- glow: move vertex creation to same method as deletion by @dbr in #644
- Removing note in README about being under new management. by @robertkeizer in #647
- Update MSRV to 1.56 by @dbr in #660
- fix doc by @linw789 in #666
- leave tree_node label None if not set by @linw789 in #662
- Support winit v0.27.2 by @dbarkar in #659
- add TextFilter by @tetenpapier in #658
- Proposed branching/release process by @dbr in #672
- Restoring "Include imgui/misc/freetype/ in crate package" from 0.8.x release by @dbr in #673
- Re-export
winit
andglow
crates by @lovelymono in #676
New Contributors
- @NightShade256 made their first contribution in #541
- @EmbersArc made their first contribution in #544
- @Sejsel made their first contribution in #572
- @kazatsuyu made their first contribution in #579
- @cwfitzgerald made their first contribution in #583
- @LoipesMas made their first contribution in #591
- @PieKing1215 made their first contribution in #599
- @imlazyeye made their first contribution in #607
- @MarijnS95 made their first contribution in #624
- @wcassels made their first contribution in #635
- @robertkeizer made their first contribution in #647
- @linw789 made their first contribution in #666
- @dbarkar made their first contribution in #659
- @tetenpapier made their first contribution in #658
- @lovelymono made their first contribution in #676
Full Changelog: v0.8.0...v0.9.0