All Versions
24
Latest Version
Avg Release Cycle
31 days
Latest Release
624 days ago
Changelog History
Page 2
Changelog History
Page 2
-
v0.13.1 Changes
June 28, 2021โ Added โญ
- Plot: you can now set the stroke of a
HLine/VLine
.
๐ Changed ๐ง
Plot::new
now takes anid_source: impl Hash
instead of aname: impl ToString
. Functionally it is the same.
- Plot: you can now set the stroke of a
-
v0.13.0 Changes
June 24, 2021โ Added โญ
- Plot:
- Panels:
- Added right and bottom panels (
SidePanel::right
andPanel::bottom
). - Panels can now be resized.
- Added an option to overwrite frame of a
Panel
.
- Added right and bottom panels (
- Improve accessibility / screen reader.
- โ Added
ScrollArea::show_rows
for efficient scrolling of huge UI:s. - โ Added
ScrollArea::enable_scrolling
to allow freezing scrolling when editing TextEdit widgets within it - โ Added
Ui::set_visible
as a way to hide widgets. - Added
Style::override_text_style
to easily change the text style of everything in aUi
(or globally). - ๐
You can now change
TextStyle
on checkboxes, radio buttons andSelectableLabel
. - โ Added support for cint under
cint
feature. - Added features
extra_asserts
andextra_debug_asserts
to enable additional checks. - ๐
TextEdit
now supports edits on a generic buffer usingTextBuffer
. - Added
Context::set_debug_on_hover
andegui::trace!(ui)
๐ Changed ๐ง
- Minimum Rust version is now 1.51 (used to be 1.52)
- ๐ Tweaked the default visuals style.
- Plot: Renamed
Curve
toLine
. TopPanel::top
is nowTopBottomPanel::top
.- ๐
SidePanel::left
no longet takes the default width by argument, but by a builder call. - 0๏ธโฃ
SidePanel::left
is resizable by default.
๐ Fixed ๐
- ๐ Fixed uneven lettering on non-integral device scales ("extortion lettering").
- ๐ Fixed invisible scroll bar when native window is too narrow for egui.
-
v0.12.0 Changes
May 10, 2021โ Added โญ
- โ Added anchors to windows and areas so you can put a window in e.g. the top right corner.
- ๐ Make labels interactive with
Label::sense(Sense::click())
. - Added
Response::request_focus
andResponse::surrender_focus
. - โ Added
TextEdit::code_editor
(VERY basic). - Pan and zoom plots.
- Add plot legends.
- Users can now store custom state in
egui::Memory
. - Added
Response::on_disabled_hover_text
to show tooltip for disabled widgets. - ๐ Zoom input: ctrl-scroll and (on
eframe
web) trackpad-pinch gesture. - ๐ Support for raw multi touch events,
enabling zoom, rotate, and more. Works with
eframe
web on mobile devices, and should work withegui_glium
for certain touch devices/screens. - โ Added (optional) compatibility with mint.
๐ Changed ๐ง
- ๐ Make
Memory::has_focus
public (again). Plot
must now be given a name that is unique within its scope.- Tab only selects labels if the
screen_reader
option is turned on. - ๐ป Renamed
ui.wrap
toui.scope
.
๐ Fixed ๐
- ๐ Fixed defocus-bug on touch screens.
- ๐ Fixed bug with the layout of wide
DragValue
s.
โ Removed ๐ฅ
- Moved experimental markup language to
egui_demo_lib
-
v0.11.0 Changes
April 05, 2021โ Added โญ
- You can now give focus to any clickable widget with tab/shift-tab.
- Use space or enter to click the selected widget.
- Use arrow keys to adjust sliders and
DragValue
s.
- egui will now output events when widgets gain keyboard focus.
- This can be hooked up to a screen reader to aid the visually impaired
- โ Added the option to restrict the dragging bounds of
Window
andArea
to a specified area usingdrag_bounds(rect)
. - โ Added support for small and raised text.
- Added
ui.set_row_height
. - โ Added
DebugOptions::show_widgets
to debug layouting by hovering widgets. - โ Added
ComboBox
to more easily customize combo boxes. - โ Added
Slider::new
andDragValue::new
to replace old type-specific constructors. - โ Added
TextEdit::password
to hide input characters.
๐ Changed ๐ง
- ๐ป
ui.advance_cursor
is now calledui.add_space
. kb_focus
is now just calledfocus
.
๐ Fixed ๐
- ๐ Fixed some bugs related to centered layouts.
- ๐ Fixed secondary-click to open a menu.
- Fix panic for zero-range sliders and zero-speed drag values.
- ๐ Fixed false id clash error for wrapping text.
- ๐ Fixed bug that would close a popup (e.g. the color picker) when clicking inside of it.
๐ Deprecated โข๏ธ
- Deprectated
combo_box_with_label
in favor of newComboBox
. - Deprectated type-specific constructors for
Slider
andDragValue
(Slider::f32
,DragValue::usize
etc).
- You can now give focus to any clickable widget with tab/shift-tab.
-
v0.10.0 Changes
February 28, 2021โ Added โญ
- โ Added
egui::plot::Plot
to plot some 2D data. - โ Added
Ui::hyperlink_to(label, url)
. - Sliders can now have a value prefix and suffix (e.g. the suffix
"ยฐ"
works like a unit). Context::set_pixels_per_point
to control the scale of the UI.- โ Added
Response::changed()
to query if e.g. a slider was dragged, text was entered or a checkbox was clicked. - โ Added support for all integers in
DragValue
andSlider
(except 128-bit).
๐ Changed ๐ง
- ๐ Improve the positioning of tooltips.
- Only show tooltips if mouse is still.
- 0๏ธโฃ
Slider
will now show the value display by default, unless turned off with.show_value(false)
. - The
Slider
value is now aDragValue
which when dragged can pick values outside of the slider range (unlessclamp_to_range
is set).
- โ Added
-
v0.9.0 Changes
February 07, 2021โ Added โญ
- โ Added support for secondary and middle mouse buttons.
- โ Added
Label
methods for code, strong, strikethrough, underline and italics. - โ Added
ui.group(|ui| { โฆ })
to visually group some widgets within a frame. - ๐ป Added
Ui
helpers for doing manual layout (ui.put
,ui.allocate_ui_at_rect
and more). - โ Added
ui.set_enabled(false)
to disable all widgets in aUi
(grayed out and non-interactive). - โ Added
TextEdit::hint_text
for showing a weak hint text when empty. egui::popup::popup_below_widget
: show a popup area below another widget.- Added
Slider::clamp_to_range(bool)
: if set, clamp the incoming and outgoing values to the slider range. - ๐ป Add:
ui.spacing()
,ui.spacing_mut()
,ui.visuals()
,ui.visuals_mut()
. - โ Add:
ctx.set_visuals()
. - ๐
You can now control text wrapping with
Style::wrap
. - Added
Grid::max_col_width
.
๐ Changed ๐ง
- Text will now wrap at newlines, spaces, dashes, punctuation or in the middle of a words if necessary, in that order of priority.
- Widgets will now always line break at
\n
characters. - Widgets will now more intelligently choose whether or not to wrap text.
mouse
has been renamedpointer
everywhere (to make it clear it includes touches too).- ๐ป Most parts of
Response
are now methods, soif ui.button("โฆ").clicked {
is nowif ui.button("โฆ").clicked() {
. Response::active
is now gone. You can useresponse.dragged()
orresponse.clicked()
instead.- Backend: pointer (mouse/touch) position and buttons are now passed to egui in the event stream.
DragValue::range
is now calledclamp_range
and also clamps incoming values.- ๐ Renamed
Triangles
toMesh
. - The tessellator now wraps the clip rectangle and mesh in
struct ClippedMesh(Rect, Mesh)
. Mesh::split_to_u16
now returns a 16-bit indexedMesh16
.
๐ Fixed ๐
- It is now possible to click widgets even when FPS is very low.
- ๐ Tessellator: handle sharp path corners better (switch to bevel instead of miter joints for > 90ยฐ).
-
v0.8.0 Changes
January 17, 2021โ Added โญ
- โ Added a simple grid layout (
Grid
). - Added
ui.allocate_at_least
andui.allocate_exact_size
. - โ Added function
InputState::key_down
. - โ Added
Window::current_pos
to position a window.
๐ Changed ๐ง
- ๐ New simpler and sleeker look!
- ๐ Renamed
PaintCmd
toShape
. - Replace tuple
(Rect, Shape)
with tuple-structClippedShape
. - ๐ Renamed feature
"serde"
to"persistence"
. - Break out the modules
math
andpaint
into separate cratesemath
andepaint
.
๐ Fixed ๐
- ๐ Fixed a bug that would sometimes trigger a "Mismatching panels" panic in debug builds.
Image
andImageButton
will no longer stretch to fill a justified layout.
- โ Added a simple grid layout (
-
v0.7.0 Changes
January 04, 2021โ Added โญ
- Added
ui.scroll_to_cursor
andresponse.scroll_to_me
(#81 by lucaspoffo). - โ Added
window.id(โฆ)
andarea.id(โฆ)
for overriding the defaultId
.
๐ Changed ๐ง
- ๐ Renamed
Srgba
toColor32
. - All color contructions now starts with
from_
, e.g.Color32::from_rgb
. - ๐ Renamed
FontFamily::VariableWidth
toFontFamily::Proportional
. - Removed
pixels_per_point
fromFontDefinitions
.
๐ Fixed ๐
- ๐ฆ
RepaintSignal
now implementsSync
so it can be sent to a background thread. TextEdit
widgets are now slightly larger to accommodate their frames.
๐ Deprecated โข๏ธ
- ๐ Deprecated
color::srgba
.
- Added
-
v0.6.0 Changes
December 26, 2020โ Added โญ
- Turn off
Window
title bars withwindow.title_bar(false)
. - ๐ป
ImageButton
-ui.add(ImageButton::new(โฆ))
. - ๐ป
ui.vertical_centered
andui.vertical_centered_justified
. - ๐ป
ui.allocate_painter
helper. - โ 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
Slider
orDragValue
. - โ Added
egui::math::Rot2
: rotation helper. Response
now contains theId
of the widget it pertains to.- ๐ป
ui.allocate_response
that allocates space and checks for interactions. - โ Added
response.interact(sense)
, e.g. to check for clicks on labels.
๐ Changed ๐ง
- ๐ป
ui.allocate_space
now returns an(Id, Rect)
tuple. Arc<Context>
has been replaced withCtxRef
everywhere.- ๐
Slight tweak of the default
Style
and font sizes. SidePanel::left
andTopPanel::top
now takesimpl Hash
as first argument.- A
Window
may now cover an existingCentralPanel
. - ๐ป
ui.image
now takesimpl Into<Vec2>
as asize
argument. - Made some more fields of
RawInput
optional. - ๐
Slider
andDragValue
uses fewer decimals by default. See the full precision by hovering over the value. egui::App
: addedfn name(&self)
andfn clear_color(&self)
.- Combo boxes has scroll bars when needed.
- Expand
Window
+Resize
containers to be large enough for last frames content - 0๏ธโฃ
ui.columns
: Columns now defaults to justified top-to-down layouts. - ๐ Renamed
Sense::nothing()
toSense::hover()
. - Replaced
parking_lot
dependency withatomic_refcell
by default.
๐ Fixed ๐
- The background for
CentralPanel
will now cover unused space too. - ๐ป
ui.columns
: Improve allocated size estimation.
๐ Deprecated โข๏ธ
RawInput::screen_size
- useRawInput::screen_rect
instead.- ๐ป left/centered/right column functions on
Ui
. - ๐ป
ui.interact_hover
andui.hovered
.
- Turn off
-
v0.5.0 Changes
December 13, 2020โ 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::Layout
now supports justified layouts where contents is also centered, right-aligned, etc.- ๐ป
ui.allocate_ui(size, |ui| ...)
: Easily create a child-Ui
of a given size. - ๐ป
SelectableLabel
(ui.selectable_label
andui.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_source
andScrollArea::id_source
to 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::Layout
substantially, changing its interface. - Calling
on_hover_text
/on_hover_ui
multiple 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.
- ๐ Emoji support: 1216 different emojis that work in any text.