Commit Graph

1123 Commits

Author SHA1 Message Date
Emil Ernerfeldt d6233de9dc Small improvements to the demo (add source code links etc) 2021-03-07 19:51:07 +01:00
Emil Ernerfeldt 25d4a7e11e Fix gained kb focus event on shift-tab 2021-03-07 19:45:28 +01:00
Emil Ernerfeldt eba4d3d7b1 refactor: move kb-focus logic to own struct 2021-03-07 19:45:28 +01:00
Emil Ernerfeldt cd4c07e09a Output events when widgets gain keyboard focus
Part of https://github.com/emilk/egui/issues/167
2021-03-07 19:45:20 +01:00
Emil Ernerfeldt a370339db7 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.

Closes https://github.com/emilk/egui/issues/31
2021-03-07 18:15:57 +01:00
Emil Ernerfeldt 6fd7c422ab Refactor: remove has_kb_focus/lost_kb_focus bools from Reponse
Just forward the queries to Memory
2021-03-07 13:06:57 +01:00
Ridan Vandenbergh 4df8418e41
fix: Modern browsers encode Space as ' ' (#208) 2021-03-07 10:20:11 +01:00
Emil Ernerfeldt b72184dc7e clippy fix 2021-03-06 11:19:32 +01:00
Emil Ernerfeldt 5d0c71350d Add `fn Memory::gained_kb_focus() -> bool` query 2021-03-06 11:17:24 +01:00
Emil Ernerfeldt 007f9f3cb9 Fix secondary-click to open a menu
Fixes https://github.com/emilk/egui/issues/198
2021-03-06 11:11:07 +01:00
Emil Ernerfeldt fa4752f315 Add the syntect feature to egui_demo_app 2021-03-06 11:04:05 +01:00
Emil Ernerfeldt 9c8439d053 Add some helper functions to Response 2021-03-06 10:48:39 +01:00
Emil Ernerfeldt fb2db4940e Release 0.10.0 - Plot and polish 2021-02-28 20:11:37 +01:00
Emil Ernerfeldt f793ac7f3e [demo] Remove dead code 2021-02-28 20:11:37 +01:00
Emil Ernerfeldt 8fb1472560 Add glsl files to egui_web and egui_glium includes 2021-02-28 20:11:37 +01:00
Emil Ernerfeldt 8047a0f87f Publish new web demo 2021-02-28 19:51:22 +01:00
Emil Ernerfeldt 1fb3b43dfc [demo] Improve painting demo slightly 2021-02-28 19:50:47 +01:00
Emil Ernerfeldt e417fac52e Fix web shaders
Got broken in https://github.com/emilk/egui/pull/187
2021-02-28 19:47:01 +01:00
Emil Ernerfeldt a9a49f19ca cargo update 2021-02-28 19:13:05 +01:00
Emil Ernerfeldt 24d68cc55e Merge epi/CHANGELOG.md into eframe/CHANGELOG.md 2021-02-28 19:11:02 +01:00
Emil Ernerfeldt 84cc227f11 eframe: always provide a texture allocator 2021-02-28 19:09:48 +01:00
Emil Ernerfeldt fdb1aa6bec improve documentation 2021-02-28 18:59:46 +01:00
Emil Ernerfeldt 8be37b3d6c Add Response::has_kb_focus()
Closes https://github.com/emilk/egui/issues/196
2021-02-28 18:19:33 +01:00
Emil Ernerfeldt 834078a476 Turn off the cursor preview when hovering a TextEdit 2021-02-28 17:27:39 +01:00
Emil Ernerfeldt d3fd51d6a4 Add Response::changed(): see if e.g. text was entered or slider dragged 2021-02-28 17:24:07 +01:00
Patrik Höglund a859b2a26e
Add icon support to eframe (#193)
Co-authored-by: Emil Ernerfeldt <emil.ernerfeldt@gmail.com>
2021-02-26 15:59:30 +01:00
Emil Ernerfeldt bdbc59455c Improve documentation for the most common widgets 2021-02-23 22:18:13 +01:00
Emil Ernerfeldt 814f8c0dd8 Add support for all integers in DragValue and Slider (except 128-bit) 2021-02-23 20:40:14 +01:00
Emil Ernerfeldt 02a65132e4 Add epi::App::initial_window_size to control initial native window size 2021-02-23 20:28:55 +01:00
Emil Ernerfeldt 049a7b0382 Make DragValue::from_get_set public
Closes https://github.com/emilk/egui/issues/188
2021-02-23 20:16:43 +01:00
Emil Ernerfeldt 5f6a468812 Add Context::set_pixels_per_point to control the scale of the UI 2021-02-21 11:23:33 +01:00
Emil Ernerfeldt c601db5956 refactor: move tooltip state handling out of memory 2021-02-21 10:31:28 +01:00
Emil Ernerfeldt 67623919d7 refactor: move DragValue state 2021-02-21 10:30:31 +01:00
Emil Ernerfeldt 24a1c3136c Add a pull_request_template.md 2021-02-21 10:12:23 +01:00
Emil Ernerfeldt 82350a2f1e Improve documentation 2021-02-21 10:12:08 +01:00
Kayo Phoenix c9919daa11
Added shaders on GLSL 1.2 (#187)
* Added shaders on GLSL 1.2

- Used `glium::program` to create shaders
- Moved shaders code to its own sources and include it as str
- Added shaders implementation on GLSL which allows run egui on old hardware
  (Raspberry Pi 1/zero in game again)

* Moved webgl shaders code to sources in `shader` subdir

* Added GLSL ES shaders to glium backend to support OpenGL ES

* Described changes related to GLSL versions support
2021-02-20 19:48:02 +01:00
Emil Ernerfeldt ebc2486d22 Slider: use a DragValue for the value, and implement suffix/prefix 2021-02-20 18:29:09 +01:00
Emil Ernerfeldt 32f35c6251 Implement "Smart Aim" for DragValue 2021-02-20 17:43:35 +01:00
Emil Ernerfeldt 7ac26b84b1 DragValue: handle slowly dragging a value with limited precision 2021-02-20 17:27:55 +01:00
Emil Ernerfeldt 9a546ff97a SlidSlider will now show the value display by default.
Turn off with slider.show_value(false)

Closes https://github.com/emilk/egui/issues/183
2021-02-20 16:28:39 +01:00
Emil Ernerfeldt 4e041185f1 Add module special_emojis with apple, linux, windows & github logos 2021-02-20 16:09:00 +01:00
Emil Ernerfeldt 9b58d5d4d9 color picker: just copy the r,g,b,a values without a "rgba(…)" wrapper 2021-02-20 15:49:09 +01:00
Emil Ernerfeldt ac356e2bd8 Add a link from the crate-level docs to the online egui web demo 2021-02-20 12:43:53 +01:00
Emil Ernerfeldt 6354709fe1 [demo] Link to the egui docs from the widget gallery 2021-02-20 12:07:15 +01:00
Emil Ernerfeldt 040553da78 impl<F> Widget for F where F: FnOnce(&mut Ui) -> Response
This enables functions that return `impl Widget`, so that you can
create a widget by just returning a lambda from a function.

For instance: `ui.add(toggle(bool))` (instead of `toggle(ui, bool)`)
2021-02-20 12:02:38 +01:00
Emil Ernerfeldt 6fe70e685b Simplify and unify colors of selectable widgets 2021-02-20 11:28:00 +01:00
Emil Ernerfeldt 741f0bfe8a Only show tooltips if mouse is still. 2021-02-20 10:45:19 +01:00
Emil Ernerfeldt 4354f7582f Improve the positioning of tooltips 2021-02-20 10:33:33 +01:00
Emil Ernerfeldt d5bb85b245 Add InputState::is_still to compliment InputState::is_moving 2021-02-20 09:26:58 +01:00
Emil Ernerfeldt 9c3b7d719b Bug fix: child painters now inherit color tint (e.g. grayed out) 2021-02-20 09:26:58 +01:00