mirror of
https://github.com/emilk/egui.git
synced 2026-06-27 23:13:13 -04:00
* You can now control the minimum and maixumum number of decimals to show in a `Slider` or `DragValue`. * `Slider` and `DragValue` uses fewer decimals by default. See the full precision by hovering over the value.
5.5 KiB
5.5 KiB
Egui Changelog
All notable changes to the Egui crate will be documented in this file.
NOTE: egui_web and egui_glium has their own changelogs!
The format is based on Keep a Changelog.
Unreleased
Added ⭐
- Turn off
Windowtitle bars withwindow.title_bar(false). ImageButton-ui.add(ImageButton::new(...)).ui.vertical_centeredandui.vertical_centered_justified.- Mouse-over explanation to duplicate ID warning.
- You can now easily constrain Egui to a portion of the screen using
RawInput::screen_rect. - You can now control the minimum and maixumum number of decimals to show in a
SliderorDragValue.
Changed 🔧
- Slight tweak of the default
Styleand font sizes. SidePanel::leftandTopPanel::topnow takesimpl Hashas first argument.ui.imagenow takesimpl Into<Vec2>as asizeargument.- Made some more fields of
RawInputoptional. SliderandDragValueuses fewer decimals by default. See the full precision by hovering over the value.
Deprecated
- Deprecated
RawInput::screen_size- useRawInput::screen_rectinstead.
0.5.0 - 2020-12-13
Added ⭐
- Emoji support: 1216 different emojis that work in any text.
- The Demo app comes with a Font Book to explore the available glyphs.
ui.horizontal_wrapped(|ui| ...): Add widgets on a row but wrap atmax_size.ui.horizontal_wrapped_for_text: Likeui.horizontal_wrapped, but with spacing made for embedding text.ui.horizontal_for_text: Likeui.horizontal, but with spacing made for embedding text.egui::Layoutnow supports justified layouts where contents is also centered, right-aligned, etc.ui.allocate_ui(size, |ui| ...): Easily create a child-Uiof a given size.SelectableLabel(ui.selectable_labelandui.selectable_value): A text-button that can be selected.ui.small_button: A smaller button that looks good embedded in text.ui.drag_angle_tau: For those who want to specify angles as fractions of τ (a full turn).- Add
Resize::id_sourceandScrollArea::id_sourceto let the user avoid Id clashes.
Changed 🔧
- New default font: Ubuntu-Light.
- Make it simpler to override fonts in
FontDefinitions. - Remove minimum button width.
- Refactor
egui::Layoutsubstantially, changing its interface. - Calling
on_hover_text/on_hover_uimultiple times will stack tooltips underneath the previous ones. - Text wrapping on labels, buttons, checkboxes and radio buttons is now based on the layout.
Removed 🔥
- Removed the
label!macro.
0.4.0 - 2020-11-28
Added ⭐
TextEditimprovements:- Much improved text editing, with better navigation and selection.
- Move focus between
TextEditwidgets with tab and shift-tab. - Undo edtis in a
TextEdit. - You can now check if a
TextEditlost keyboard focus withresponse.lost_kb_focus. - Added
ui.text_edit_singlelineandui.text_edit_multiline.
- You can now debug why your
Uiis unexpectedly wide withui.style_mut().visuals.debug_expand_width = true;
Changed 🔧
- Pressing enter in a single-line
TextEditwill now surrender keyboard focus for it. - You must now be explicit when creating a
TextEditif you want it to be singeline or multiline. - Improved automatic
Idgeneration, makingIdclashes less likely. - Egui now requires modifier key state from the integration
- Added, renamed and removed some keys in the
Keyenum. - Fixed incorrect text wrapping width on radio buttons
Fixed 🐛
- Fixed bug where a lost widget could still retain keyboard focus.
0.3.0 - 2020-11-07
Added ⭐
- Panels: you can now create panels using
SidePanel,TopPanelandCentralPanel. - You can now override the default Egui fonts.
- Add ability to override text color with
visuals.override_text_color. - The demo now includes a simple drag-and-drop example.
- The demo app now has a slider to scale all of Egui.
Changed 🔧
ui.horizontal(...)etc returnsResponse.- Refactored the interface for
egui::app::App. - Windows are now constrained to the screen.
Context::begin_frame()no longer returns aUi. Instead put your widgets into aSidePanel,TopPanel,CentralPanel,WindoworArea.Context::end_frame()now returns paint commands that need to be converted to triangles withContext::tesselate().- Anti-aliasing is now off by default in debug builds.
Removed 🔥
- You can no longer throw windows.
Fixed 🐛
- Fix a bug where some regions would slowly grow for non-integral scales (
pixels_per_point).
0.2.0 - 2020-10-10
- Color picker
- Unicode characters in labels (limited by what the default font supports)
- Simple drop-down combo box menu
- Logarithmic sliders
- Optimization: coarse culling in the tesselator
- CHANGED: switch argument order of
ui.checkboxandui.radio
0.1.4 - 2020-09-08
This is when I started the CHANGELOG.md, after almost two years of development. Better late than never.
- Widgets: label, text button, hyperlink, checkbox, radio button, slider, draggable value, text editing
- Layouts: horizontal, vertical, columns
- Text input: very basic, multiline, copy/paste
- Windows: move, resize, name, minimize and close. Automatically sized and positioned.
- Regions: resizing, vertical scrolling, collapsing headers (sections)
- Rendering: Anti-aliased rendering of lines, circles, text and convex polygons.
- Tooltips on hover