Commit Graph

70 Commits

Author SHA1 Message Date
Emil Ernerfeldt 48dfcde65f Add ui.allocate_response(…): allocate space and check for interactions 2020-12-26 19:14:13 +01:00
Emil Ernerfeldt 66ae0ed7b9 Add Id to Response 2020-12-26 11:28:55 +01:00
Emil Ernerfeldt a2ab35bab8 Rename `Sense::nothing()` to `Sense::hover()` 2020-12-26 02:09:32 +01:00
Emil Ernerfeldt b65e6327ab ui.allocate_space now returns an (Id, Rect) tuple 2020-12-26 01:38:26 +01:00
Emil Ernerfeldt cd7abb457f Expand Window + Resize areas to be large enough for last frames content 2020-12-25 15:41:18 +01:00
Emil Ernerfeldt 997cd4b279 ui.columns: Improve allocated size estimation + justified layous
Closes https://github.com/emilk/egui/issues/76
2020-12-25 15:34:33 +01:00
Emil Ernerfeldt 38e36fd806 Combo boxes has a scroll area
Closes https://github.com/emilk/egui/issues/75
2020-12-25 13:18:47 +01:00
Emil Ernerfeldt 36c15c4e41 Add egui::math::Rot2 rotation helper 2020-12-25 12:27:34 +01:00
Emil Ernerfeldt 01c65b0dcb Replace Arc<Context> with struct CtxRef 2020-12-19 14:48:04 +01:00
Emil Ernerfeldt ce0ea74c9f Fix: The background of CentralPanel will now cover unused space too 2020-12-19 11:17:21 +01:00
Emil Ernerfeldt ea10add1cb Deprecate left/centered/right column functions in Ui 2020-12-19 11:14:59 +01:00
Emil Ernerfeldt 1e1bfa4dc7 Add ui.allocate_painter helper 2020-12-19 11:14:21 +01:00
Emil Ernerfeldt 58f36eb6ef A `Window` may now cover an existing `CentralPanel` 2020-12-18 23:45:33 +01:00
Emil Ernerfeldt c3c4f28a9d Added App::clear_color() that apps can use to specify background color 2020-12-18 22:44:26 +01:00
Emil Ernerfeldt b0e17638df trait App now has fn name() for specifying egui_glium window title 2020-12-18 22:30:59 +01:00
Emil Ernerfeldt d022765a3c Improve decimal logic for Slider and DragValue
* 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.
2020-12-18 10:21:00 +01:00
Emil Ernerfeldt d6d9c4828e Turn off `Window` title bars with `window.title_bar(false)`
You can still resize and move them assuming there is some area that
does not steal the drag input. In particular, if a scroll area covers
the window than dragging the window contents will scroll, not move it.

Closes https://github.com/emilk/egui/issues/66
2020-12-16 23:48:23 +01:00
Emil Ernerfeldt 8af83bf93f Slight tweak of the default `Style` and font sizes 2020-12-16 21:56:24 +01:00
Emil Ernerfeldt 709e711364 Deprecated RawInput::screen_size and replaced with screen_rect 2020-12-16 21:52:28 +01:00
Emil Ernerfeldt 2c766aa540 Make RawInput::time an Option 2020-12-16 21:22:45 +01:00
Emil Ernerfeldt 91e5295db2 Add mouse-over explanation to duplicate ID warning 2020-12-16 20:29:46 +01:00
Emil Ernerfeldt 0e0beece44 SidePanel::left and TopPanel::top now takes `impl Hash` instead of Id 2020-12-15 15:13:12 +01:00
Emil Ernerfeldt 18ebac116f Add widget `ImageButton` 2020-12-15 14:52:24 +01:00
Emil Ernerfeldt b508f931c2 Add ui.vertical_centered and ui.vertical_centered_justified 2020-12-15 14:51:23 +01:00
Emil Ernerfeldt 273d466f19 Nicer spacing in changelogs 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 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 f387b097cd Add ui.drag_angle_tau 2020-12-13 20:19:45 +01:00
Emil Ernerfeldt 517b34509b Clean up CHANGELOG.md 2020-12-13 20:00:46 +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 35e8a3b4ca Update CHANGELOG.md and TODO.md 2020-12-12 20:04:32 +01:00
Emil Ernerfeldt b0d0d5dd55 [button] Remove minimum button width 2020-12-12 19:31:32 +01:00
Emil Ernerfeldt 8c82eb1970 Add CHANGELOG.md for egui_glium 2020-12-10 23:52:51 +01:00
Emil Ernerfeldt 042125c8e4 Update CHANGELOG.md 2020-12-10 23:24:48 +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 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
Emil Ernerfeldt a7e7826d2c Release 0.4.0 of egui, egui_web and egui_glium 2020-11-28 13:47:00 +01:00
Emil Ernerfeldt aab1b351ab Fixed incorrect text wrapping width on radio buttons 2020-11-23 20:01:13 +01:00
Emil Ernerfeldt e2c3bd429f Update CHANGELOG.md 2020-11-15 18:14:41 +01:00
Emil Ernerfeldt fe0d159324 Support Cmd+A ^W ^U ^K and shift-click 2020-11-15 14:21:21 +01:00
Emil Ernerfeldt c4ed507d63 Add modifier keys and implement moving cursors one word at a time 2020-11-14 21:01:21 +01:00
Emil Ernerfeldt 03eb9151c4 Improve automatic Id generation to make Id clashes less likely 2020-11-14 18:20:56 +01:00
Emil Ernerfeldt 0340e2e6de TextEdit: You must explicitly choose singleline or multiline.
Multiline TextEdit now has a default height of 4 rows.
Added `ui.text_edit_singleline` and `ui.text_edit_multiline`.
2020-11-13 11:22:00 +01:00
Emil Ernerfeldt d2b5730784 Check if TextEdit lost keyboard focus with response.lost_kb_focus 2020-11-09 18:42:54 +01:00
Emil Ernerfeldt e55b59256e Press enter in single line `TextEdit` to surrender keyboard focus 2020-11-09 18:40:23 +01:00