* slider: add trailing_color toggle
* slider/visuals: add global option in visuals with override toggle
* slider: add to demos
* use `.unwrap_or_else()` instead of match
* Add Separator::grow and Separator::shrink
* Be more conservative with the clipping in ScrollArea:s
* Add test of the growing separator
* Improve test output
* Update changelog
* Add back a little bit more clipping
* Make the minimum scroll handle length a bit longer
* More clip rect tweaks
* Add Spacing::combo_width
* Put ComboBox arrow closer to the text
* Tweak faint_bg_color
* Make it possible to have buttons without background
…while still having background for sliders, checkboxes, etc
* Rename mandatory_bg_fill -> bg_fill
* tweak grid stripe color (again)
* Make the animated part of the ProgressBar more visible
* Add line in changelog
* Add another line in changelog
* Menu fix: use the `open` widget style for open menus
* Adjust sizes on menu buttons and regular buttons to make sure they match
* Update comment
Co-authored-by: Andreas Reich <andreas@rerun.io>
* optional_bg_fill -> weak_bg_fill
Co-authored-by: Andreas Reich <andreas@rerun.io>
* Revert "fix all clippy lints and remove them from allow list in cranky (#2419)"
This reverts commit 930ef2db38.
* Explain the cranky lints better
* Add Color32::gamma_multiply
* Remove unused pub use
* Remove non-existing crate category
* Improve color test with more lines
* Improve the look of thin lines, making them look weaker
Before they looked were too strong for the thickness.
* Use asserts for shader compilations
* Update changelogs
* Note the namechange of egui::color to egui::ecolor
* Use a solid triangle for collapsing headers and windows
* Add Shadow::NONE
* Add Visuals::panel_fill, window_fill and window_stroke
* Bug fix: ComboBox::width sets the outer width of the ComboBox
* egui_extras::Table: add functions to access the `Ui` for the header/body
* ComboBox: use solid triangle
* Tweak default menu margin
* Nudge panel separator lines so they stay visible
* Update changelogs
* split out ecolor crate
* split up ecolor crate in lots of modules
* add changelog notes
* add readme to ecolor
* put clippy::manual_range_contains on cranky allow list
* fix hex color issues
* doc fixes
* more hex_color fixes
* Document features
* Rename hex_color module to avoid warning
* Sort the feature names
* fix link in CHANGELOG.md
* better wording
Co-authored-by: Emil Ernerfeldt <emil.ernerfeldt@gmail.com>
* limit day to last day of month if the month or year is changed
* update chrono to 0.4.23, switch to NaiveDate and remove use of deprecated functions.
* Nicer debug rectangles
* Move scrollbars into the clip-rect so they are always visible
* Improve table demo
* Add options for controlling inner and outer margin of the scroll bars
* Add line to changelog
* Update egui_extras changelog with recent Table improvements
* Refactor Table:s scroll options
* Add Table::auto_size
* Rename it auto_shrink
* Use simple `ui.interact` for the resize line
* Introduce TableReizeState
* Simplify some code
* Add striped options to table demo
* Auto-size table columns by double-clicking the resize line
* Table: add option to auto-size the columns
* Table: don't let column width gets too small, unless clipping is on
* egui_extras: always use serde
Otherwise using `get_persisted` etc is impossible,
and working around that tedious.
* Avoid clipping last column in a resizable table
* Some better naming
* Table: Use new `Column` for setting column sizes and properties
Also make `clip` a per-column property
* All Table:s store state for auto-sizing purposes
* Customize each column wether or not it is resizable
* fix some auto-sizing bugs
* Fix shrinkage of adaptive column content
* Rename `scroll` to `vscroll` for clarity
* Add Table::scroll_to_row
* scroll_to_row takes alignment
* Fix bug in table sizing
* Strip: turn clipping OFF by default, because it is dangerous and sucks
* Add TableBody::mac_rect helper
* Table: add options to control the scroll area height.
* Docstring fixes
* Cleanup
* Using tracing-subscriber in hello_world example
* Add Key::Plus/Minus/Equals
* Warn if failing to guess OS from User-Agent
* Remove jitter when using Context::set_pixels_per_point
* Demo app: zoom in/out using ⌘+ and ⌘-
* Demo app: make backend panel GUI scale slider better
* Optimize debug builds a bit
* typo
* Update changelog
* Add helper module `egui::gui_zoom` for zooming an app
* Better names, and update changelog
* Combine Plus and Equals keys
* Last fix
* Fix docs
* Use total_cmp for clamping DragValue
* Added test for clamping
* Increase MSRV in all crates
* Increased rust version for github actions and lib.rs
* Inversed ranges are now working properply with clamp_to_range
* Added more tests
* eframe web: Add WebInfo::user_agent
* Deprecate `Modifier::ALT_SHIFT`
* Add code for formatting Modifiers and Key
* Add type KeyboardShortcut
* Code cleanup
* Add Context::os/set_os to query/set what OS egui believes it is on
* Add Fonts::has_glyph(s)
* Add helper function for formatting keyboard shortcuts
* Faster code
* Add way to set a shortcut text on menu buttons
* Cleanup
* format_keyboard_shortcut -> format_shortcut
* Add TODO about supporting more keyboard sumbols
* Modifiers::plus
* Use the new keyboard shortcuts in emark editor demo
* Explain why ALT+SHIFT is a bad modifier combo
* Fix doctest
Closes https://github.com/emilk/egui/issues/2068
Before this PR, the default font, Ubuntu-Light, was ~11% smaller
than it should have been, and the default monospace font, Hack,
was ~14% smaller. This means that setting the font size `12` in egui
would yield smaller text than using that font size in any other app.
Ooops!
The change is that this PR now takes into account the ttf properties
`units_per_em` and `height_unscaled`.
If your egui application has specified you own font sizes or text styles
you will see the text in your application grow
larger, unless you go in and compensate by dividing all font sizes by
~1.21 for Ubuntu-Light/Proportional and ~1.16 for Hack/Monospace,
and with something else if you are using a custom font!
This effects any use of `FontId`, `RichText::size`, etc.
This PR changes the default `Style::text_styles` to compensate,
so the default egui style should look the same before and after this PR.
* egui_extras: Add Table::vertical_scroll_offset
* Added example for TableBuilder::vertical_scroll_offset
* Format code
* Add link to PR in the changelog
Co-authored-by: Emil Ernerfeldt <emil.ernerfeldt@gmail.com>
* Allow cursors to be linked
* Link cursors in demo
* Refactor cursor memory to deal with removal of plots
* Refactor PlotItem::on_hover to produce a list of cursors
* Use a separate `LinkedCursorsGroup` type to link cursors.
* Refactor `Cursor`.
* Inline `push_argument_ruler` and `push_value_ruler`.
* Update documentation
* Update doc reference