Emil Ernerfeldt
75fa77e040
Rename Triangles to Mesh
2021-01-25 21:23:24 +01:00
Emil Ernerfeldt
247026149c
Multiple mouse button support ( #135 )
...
Add support for primary, secondary and middle mouse buttons. Also improve ability to click things in low FPS situations.
This introduces a lot of breaking changes:
Backends/integrations now pass mouse events via the even stream.
Response has an interface of mostly methods instead of public members.
input.mouse is now input.pointer and has new interface.
* Rename 'mouse' to 'pointer' everywhere (pointer = mouse or touch)
* Make Response::clicked and Response::double_clicked into methods
* Remove Response::active and add dragged() and interact_pointer_pos()
* Support multiple mouse buttons
* Make PointerState interface all methods
* Make most members of Response private
2021-01-25 18:50:19 +01:00
Emil Ernerfeldt
31b7eda51e
Rename Egui to egui
...
Also update iamges in README.md
2021-01-17 14:48:59 +01:00
Emil Ernerfeldt
718eec4b89
[egui_glium] Fix set_window_size for non-native pixels_per_point
2021-01-17 12:24:17 +01:00
Emil Ernerfeldt
d0fc77fe9b
[egui_glium] minor code cleanup
2021-01-17 02:31:37 +01:00
Emil Ernerfeldt
2854a84728
Improve documentation about how to write a painter for egui
2021-01-17 02:12:29 +01:00
Emil Ernerfeldt
4933bb3c30
[egui_glium] Fix a bug where key releases weren't sent to Egui
...
Fixes https://github.com/emilk/egui/issues/102
2021-01-11 18:09:09 +01:00
walterpie
b08870dcee
Make egui_glium::painter::Painter::paint_job
pub ( #100 )
...
* Make `egui_glium::painter::Painter::paint_job` pub
The background is: I'm working on an engine where I would like to draw the gui and the game to the same `glium::Frame`. Haven't found any other obvious, trivial solution. I could of course write my own integration, but I just think this makes sense to be public.
* Make two other necessary functions public
2021-01-11 09:35:47 +01:00
Emil Ernerfeldt
fb2317c993
Rename PaintCmd
to Shape
2021-01-10 11:43:01 +01:00
Emil Ernerfeldt
fe491c3b75
[egui_glium] Explicitly use bilinear texture sampling
...
This is the reference renderer, so it is good to be explicit.
2021-01-09 10:27:32 +01:00
Emil Ernerfeldt
5ef9f35d1e
[epi] Simplify TextureAllocator interface
2021-01-07 16:29:58 +01:00
Emil Ernerfeldt
1bcf35d774
Update ureq to 2.0
2021-01-04 15:52:29 +01:00
Emil Ernerfeldt
69d31a5e47
[eframe] Make persistence, http and time optional features
...
Saves on compile times.
2021-01-04 10:25:13 +01:00
Emil Ernerfeldt
10a23d18e1
Support additive colors in color picker
2021-01-03 18:16:12 +01:00
Emil Ernerfeldt
c6a5af19e6
Add all alpha-numeric keys to egui::Key
...
Closes https://github.com/emilk/egui/issues/91
2021-01-03 11:25:13 +01:00
Emil Ernerfeldt
73f3d8cf46
Rename Srgba to Color32
2021-01-02 17:02:18 +01:00
Emil Ernerfeldt
8fd58dc827
[egui_glium] make GliumInputState::raw public
...
Closes https://github.com/emilk/egui/issues/90
2021-01-02 16:37:39 +01:00
Emil Ernerfeldt
948d8ec6ed
clippy fixes
2021-01-02 16:31:45 +01:00
Emil Ernerfeldt
14a96ca5d0
Add a dummy warm-up frame to the demo app to pre-cache emojis
2021-01-02 14:42:43 +01:00
Emil Ernerfeldt
d229b6fc23
Enforce rust_2018_idioms in all libs
2021-01-02 12:02:26 +01:00
Emil Ernerfeldt
4e3251c300
Improve ecosystem documentation and add changelogs for epi and eframe
2021-01-02 11:59:20 +01:00
Emil Ernerfeldt
b1022d01c1
Rename epi::App::ui to epi::App::update
2021-01-01 20:22:18 +01:00
Emil Ernerfeldt
375e317547
Move http fetch api from eframe to epi
2021-01-01 14:54:26 +01:00
Emil Ernerfeldt
9db1b8dbf9
Add http fetch to eframe and implement it in egui_glium using ureq
2020-12-30 20:56:50 +01:00
Emil Ernerfeldt
d7459bc13d
Move egui::app
into new epi
crate
2020-12-29 14:15:46 +01:00
Emil Ernerfeldt
d38b16f1ea
Learn how to spell to "tessellation"
2020-12-29 12:18:41 +01:00
Emil Ernerfeldt
958fc2753a
RepaintSignal now implements Sync so it can be sent to another thread
...
Fixes https://github.com/emilk/egui/issues/82
2020-12-27 10:49:26 +01:00
Patrik Höglund
bb469bf52f
Make it possible to set Glium windows as not resizable. ( #69 )
2020-12-22 15:20:38 +01:00
Emil Ernerfeldt
dbab277658
[egui_glium] Restore window position when starting app
2020-12-21 22:10:31 +01:00
Emil Ernerfeldt
8f034d391d
[egui_glium] Your app state will auto-save to a good directory
...
Directory found with https://docs.rs/directories-next/2.0.0/directories_next/struct.ProjectDirs.html#method.data_dir
2020-12-19 21:06:59 +01:00
Emil Ernerfeldt
89937bf636
[egui_web] Auto-save app state to Local Storage every 30 seconds
2020-12-19 20:50:00 +01:00
Emil Ernerfeldt
99808d2df8
Implement Storage trait for egui_web:s local storage bindings
2020-12-19 14:58:00 +01:00
Emil Ernerfeldt
01c65b0dcb
Replace Arc<Context> with struct CtxRef
2020-12-19 14:48:04 +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
71449fe61c
Only forbid warnings in release builds
2020-12-18 22:19:56 +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
f1b4353039
[egui_glium]: Store window size in points instead of physical pixels
2020-12-16 19:38:28 +01:00
Emil Ernerfeldt
09aa905f7c
egui_glium::run parameter app
now has signature Box<dyn App>
2020-12-14 11:24:37 +01:00
Daniel Collin
69dc13ed2d
Allow user to check for Key::Space
2020-12-13 10:00:20 +01:00
Tom Solberg
601e4f3e09
actually take path for FileStorage::from_path
2020-12-11 11:31:42 +01:00
Emil Ernerfeldt
633b19ee99
[egui_web] Repaint on finished fetch in example app
2020-11-20 20:35:16 +01:00
Emil Ernerfeldt
99a2a52510
Code cleanup
2020-11-20 20:32:38 +01:00
Emil Ernerfeldt
c6ce0b9e8c
[example_web] show loading of an image
...
Required some redesign of `TextureAllocator` as well as
some improvements to the fetch API.
2020-11-18 22:16:01 +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
8a0bc97e8c
[egui_glium] Fix paste
2020-11-13 11:04:45 +01:00
Emil Ernerfeldt
af11d766fc
Split out tesselation from Context::end_frame()
2020-11-07 11:44:32 +01:00
Emil Ernerfeldt
ed8a69ab2f
[drag-and-drop] Add Grab and Grabbing CursorIcon:s
2020-11-02 17:40:05 +01:00
Emil Ernerfeldt
ca96172552
You can override the default Egui fonts
...
Closes https://github.com/emilk/egui/issues/32
2020-10-31 18:03:13 +01:00
Emil Ernerfeldt
7638ca9962
[app] Simplify interface to egui::app::App
2020-10-24 19:23:16 +02:00
Emil Ernerfeldt
daa7a2bdb2
[egui_glium] refactor
2020-10-24 18:49:44 +02:00
Emil Ernerfeldt
c364403d44
[app] Give apps the ability to resize integration
2020-10-24 18:45:31 +02:00
Emil Ernerfeldt
44a7cac046
Context::begin_frame()
no longer returns anything.
...
Put your widgets into a `SidePanel`, `TopPanel`,
`Window` or into `ctx.background_ui()`.
2020-10-24 10:56:23 +02:00
Emil Ernerfeldt
8ccc36937f
[egui_glium] Add option not to persist app to file
2020-10-19 20:25:05 +02:00
Emil Ernerfeldt
92cfbe643c
Add #![forbid(unsafe_code)] and safety badge
2020-10-18 15:40:23 +02:00
Emil Ernerfeldt
a4e19d7207
[app] Add demo app slider to change scale of all of Egui
2020-10-17 23:54:46 +02:00
Emil Ernerfeldt
251cde60f0
[app] Refactor egui::app::App interface to be more data oriented
2020-10-17 16:13:20 +02:00
Emil Ernerfeldt
5cba44eaa8
Clean up various small TODOs
2020-10-01 22:40:49 +02:00
Emil Ernerfeldt
6fcfb52aa0
[demo] add frame time graph to demo app
2020-10-01 22:25:44 +02:00
Emil Ernerfeldt
b77151fb64
remove seconds_from_midnight from core egui input
...
It is only used by demo app, and so does not belong to egui proper.
Instead it is now passed as part of a DemoEnvironment
2020-09-23 08:57:23 +02:00
Emil Ernerfeldt
6e7507373a
[egui_glium] clean up the code for the glium OpenGL painter
2020-09-21 19:19:24 +02:00
Emil Ernerfeldt
5856cded95
refactor RunMode: move it from backend to the demo App ( #23 )
...
This simplifies the egui_glium and egui_web backends substantially,
reduces the scope of RunMode to a single file, and
removes duplicated code.
Basically: this is how I should have written it from the beginning.
2020-09-16 08:03:40 +02:00
Jay Oster
0ea80ae10a
Fix continuous RunMode in glium backend on Windows ( #21 )
2020-09-14 20:55:35 +02:00
Emil Ernerfeldt
d49aec4079
Add user texture support to egui_glium and egui_web backends
2020-09-11 18:54:57 +02:00
Emil Ernerfeldt
13060d495b
[user texture] change uv to normalized texture coords in 0-1 range
2020-09-09 17:14:42 +02:00
Emil Ernerfeldt
8984302122
[user textures] switch WHITE_UV to (0,0) and require clamped sampling
2020-09-09 15:24:09 +02:00
Emil Ernerfeldt
bb367752cf
[text] support non-latin characters by dynamically adding them to atlas
2020-09-09 14:33:30 +02:00
Emil Ernerfeldt
0e870dae3e
[refactor] rename Texture::id to version
2020-09-09 13:32:40 +02:00
Emil Ernerfeldt
dc40a5d31d
[refactor] represent colors with arrays
2020-09-02 22:04:10 +02:00
Emil Ernerfeldt
1f8d3a699f
[egui_glium] sRGBA: blend vertex colors in linear space
2020-08-29 12:04:41 +02:00
Emil Ernerfeldt
73cea29f7d
[docs] Improve README.md and documentation
2020-08-21 18:53:43 +02:00
Emil Ernerfeldt
f693a558c5
[web/glium] better text input filtering
...
CapsLock and function keys (F1, F2, ...) are now ignored on web.
All special keys are ignored on glium.
2020-07-30 11:58:24 +02:00
Emil Ernerfeldt
554e6e7120
[app] unify web and glium demo app
2020-07-23 19:04:23 +02:00
Emil Ernerfeldt
61cdec8fca
[refactor] rename 'example' to 'demo', and add simple example_glium
2020-07-23 12:18:19 +02:00
Emil Ernerfeldt
48bad68257
[glium] implement reactive run mode
2020-07-22 22:26:49 +02:00
Emil Ernerfeldt
a14bfa0e73
[glium] make it super easy to make an Egui app using glium
2020-07-22 18:46:12 +02:00
Emil Ernerfeldt
e84412dec5
[glium] break out persistence
2020-07-22 18:01:27 +02:00
Emil Ernerfeldt
4e52a960e5
[glium] refactor and simplify glium example code
2020-07-22 12:10:14 +02:00
Emil Ernerfeldt
9b9cd01c5c
[glium] update to latest glium with EventLoop and vsync
2020-07-22 00:36:17 +02:00
Emil Ernerfeldt
fccd135254
[refactor] rename 'PaintBatches' to 'PaintJobs'
2020-07-19 00:01:13 +02:00
Emil Ernerfeldt
520e42c11c
[backend] use hardware scissor rect in WebGL and glium
2020-07-17 10:29:21 +02:00
Emil Ernerfeldt
fd5ab736bb
Rename from "Emigui" to "Egui"
...
Shorter to type (especially in code).
2020-05-30 10:22:35 +02:00