Emil Ernerfeldt
b508f931c2
Add ui.vertical_centered and ui.vertical_centered_justified
2020-12-15 14:51:23 +01:00
Emil Ernerfeldt
7710308e09
ui.image
now takes impl Into<Vec2>
as a size
argument
2020-12-15 14:50:24 +01:00
Emil Ernerfeldt
5d513eb9ec
Fix publishing (renamed font files)
2020-12-13 21:21:35 +01:00
Emil Ernerfeldt
403e2dfe5f
Release Egui 0.5.0
...
## 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 at `max_size`.
* `ui.horizontal_wrapped_for_text`: Like `ui.horizontal_wrapped`, but with spacing made for embedding text.
* `ui.horizontal_for_text`: Like `ui.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` and `ui.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` and `ScrollArea::id_source` to let the user avoid Id clashes.
### Changed 🔧
* New default font: [Ubuntu-Light](https://fonts.google.com/specimen/Ubuntu ).
* 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.
2020-12-13 21:15:57 +01:00
Emil Ernerfeldt
a7ae15871c
Use std::borrow::Cow for the font data.
...
This saves some memory usage and copies in the common case.
It also fixes a weird 10x performance regression in the web demo.
2020-12-13 21:04:02 +01:00
Emil Ernerfeldt
357f62e136
Small improvements to the demo app
2020-12-13 20:37:44 +01:00
Emil Ernerfeldt
f387b097cd
Add ui.drag_angle_tau
2020-12-13 20:19:45 +01:00
Emil Ernerfeldt
41e4acfd4f
Add helper Layout::top_down_justified(align)
2020-12-13 19:45:30 +01:00
Emil Ernerfeldt
b7d1584f44
Simplify how fonts are defined in FontDefinitions
2020-12-13 19:29:02 +01:00
Emil Ernerfeldt
5880c95158
ui.horizontal_for_text: Size and spacing made for text
2020-12-13 18:14:18 +01:00
Emil Ernerfeldt
b15bd76596
Pick default multiline on Labels based on layout and if text contains \n
2020-12-13 13:57:17 +01:00
Emil Ernerfeldt
273212a63c
on_hover_text/ui many times will stack tooltips beneath the previous
2020-12-13 13:14:58 +01:00
Emil Ernerfeldt
5b0da17d91
Merge pull request #65 from emoon/support-space-key
...
Allow user to check for Key::Space
2020-12-13 12:29:05 +01:00
Daniel Collin
69dc13ed2d
Allow user to check for Key::Space
2020-12-13 10:00:20 +01:00
Emil Ernerfeldt
bd192a0374
Handle different item_spacings when doing hover detection
2020-12-13 00:40:19 +01:00
Emil Ernerfeldt
6ff39d88bf
Demo App: Add ability to close the Backend window
2020-12-13 00:30:54 +01:00
Emil Ernerfeldt
72544b3690
Add a font book to the demo app
2020-12-12 19:53:04 +01:00
Emil Ernerfeldt
48a8553661
Sprinkle demo app with emojis
2020-12-12 19:43:12 +01:00
Emil Ernerfeldt
4db9b82435
[button] Implement paint culling for buttons
2020-12-12 19:34:18 +01:00
Emil Ernerfeldt
02b1e82a6e
[button] Add ability to turn off button frame
2020-12-12 19:33:26 +01:00
Emil Ernerfeldt
84f06ed09a
[button] Use singleline in horizontal layouts, else multiline
2020-12-12 19:32:58 +01:00
Emil Ernerfeldt
b0d0d5dd55
[button] Remove minimum button width
2020-12-12 19:31:32 +01:00
Emil Ernerfeldt
8b9d58d753
Add variable width font as fallback to monospace
2020-12-12 19:30:01 +01:00
Emil Ernerfeldt
891c5d84d7
Add a second emoji font: emoji-icon-font
2020-12-12 15:03:12 +01:00
Emil Ernerfeldt
cb310676af
Add Emoji support with NotoEmoji-Regular
2020-12-12 00:53:54 +01:00
Emil Ernerfeldt
a9df510a01
Move replacement glyph info into Font
2020-12-12 00:53:54 +01:00
Emil Ernerfeldt
c82186e196
Fix Galley test
2020-12-12 00:53:54 +01:00
Emil Ernerfeldt
6a4a03ce9d
Make struct Font a wrapper around FontImpl
2020-12-11 23:39:32 +01:00
Emil Ernerfeldt
2075cb4676
Add ui.colored_label(color, text) helper function
2020-12-11 12:25:28 +01:00
Emil Ernerfeldt
2bb99213c8
Use extremely explicit names like available_rect_before_wrap
2020-12-10 23:25:23 +01:00
Emil Ernerfeldt
81a9bdd5b0
Add ui.small_button: a smaller button that looks good embedded in text
2020-12-10 23:23:35 +01:00
Emil Ernerfeldt
383ef94b4a
Label: correct y offset when sharing a row with another bigger widget
2020-12-10 23:23:35 +01:00
Emil Ernerfeldt
d137ea0443
Label text will now intelligently continue and then wrap in wrap-layout
2020-12-10 23:23:35 +01:00
Emil Ernerfeldt
a6ffe83349
Fix wrong cursor advancement for allocate_ui
2020-12-10 23:23:35 +01:00
Emil Ernerfeldt
8b097d014b
Improve alginment of text with e.g. buttons
2020-12-10 23:23:35 +01:00
Emil Ernerfeldt
9b72a14883
Correctly align checkboxes and radiobuttons within justified layouts
2020-12-10 23:23:35 +01:00
Emil Ernerfeldt
807dafe91b
Add ui.horizontal_wrapped and ui.horizontal_wrapped_for_text
2020-12-10 23:23:35 +01:00
Emil Ernerfeldt
98bb0f4110
Fix combo box width
2020-12-10 23:23:35 +01:00
Emil Ernerfeldt
5cd07db96a
fix cursor advancement after wrapping
2020-12-10 23:23:35 +01:00
Emil Ernerfeldt
ea9133a92d
wrapping
2020-12-10 23:23:35 +01:00
Emil Ernerfeldt
7fb3c66d0b
advance_after_rect
2020-12-10 23:23:35 +01:00
Emil Ernerfeldt
a97141fe06
Correctly align buttons and labels in justified layouts
2020-12-10 23:23:35 +01:00
Emil Ernerfeldt
c520f2e9cc
Direction enum now one of LeftToRight, RightToLeft, TopDown, BottomUp
2020-12-10 23:23:35 +01:00
Emil Ernerfeldt
ed6739867d
Simplify Layout interface
2020-12-10 23:23:35 +01:00
Emil Ernerfeldt
b0ba66b90d
Refactor: move min_rect/max_rect/cursor into struct Region
2020-12-10 23:23:35 +01:00
Emil Ernerfeldt
6e8d5c87a0
Add Resize::id_source and ScrollArea::id_source
2020-12-10 10:28:30 +01:00
Emil Ernerfeldt
6de93cb0ec
Remove the label! macro
2020-12-10 10:15:25 +01:00
Emil Ernerfeldt
5fcc64dc85
Always start off painting two frames to allow things to settle
2020-12-08 22:38:20 +01:00
Emil Ernerfeldt
428e2373e5
Change default font to Ubuntu-Light
2020-11-30 07:55:00 +01:00
Emil Ernerfeldt
4ecb7d14ca
New widget: SelectableLabel
: a text-button that can be selected
...
Also available via `ui.selectable_label` and `ui.selectable_value`
2020-11-30 07:17:03 +01:00