All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog and this project adheres to Semantic Versioning.
ProgressBarcontrol for tracking the completion of a task with automatic value conversionsenable()anddisable()methods on all controlsRadioButtonscontrol for groups of radio buttonsCombobox::selected()method to retrieve the currently selected index of the combobox- Officially move communications to the Matrix room #rust-native-ui:matrix.nora.codes
str_toolsmodule provides utilities for converting to and from systemCStringandCStrvalues, while enforcing correct newline values (CR vs CRLF).
ui-sysis now built with Bindgen. This means it can track libui more closely.- README.md now links to libui, and is more explanatory
LayoutGrid::insert_atno longer takesleftandheightarguments- Many APIs which took
u64ori64arguments now takei32for wider compatibility - The semi-unstable
iui::drawsubsystem is again exported to downstream consumers of theiuicrate. UI::queue_mainandUI::on_should_quitnow require passed closures to be'static, for soundness- All callback registration functions require that their callbacks live at least as long as the
UItoken, for soundness
No deprecations.
Transformno longer implementsPartialEqas the existing implementation was broken.ButtonandLabelno longer implementtext_refas we cannot ensure toolkit newline compliance.
VerticalBoxandHorizontalBoxno longer link to the removedBoxExttrait.ui-sysnow builds on modern macOS.inputsandinputs-gridexamples no longer erroneously start at 0 for inputs starting at 1.- Text no longer uses incorrect newlines per platform.
UI::run_delayno longer spins on the callback, but actually calls it at the appropriate interval
No security changes.
- README now has syntax coloring
- README now has badges and sample screenshot
Checkboxcontrol for Boolean inputComboboxcontrol for selecting from one of a fixed set of optionsLayoutGridcontrol for grid-based 2D layoutsui-syscan now be built without either pulling or buildinglibui, controlled by Cargo features- Building on MSVC now works
ptr()method on controls is no longerunsafeiuinow usesbitflags1.0Areafunctions which have UB based on the type ofAreaare nowunsafe
No deprecations.
- The old
uicodebase no longer lives in this repository.
HorizontalBox::newnow correctly returns aHorizontalBox
No security changes.