Commit graph

586 commits

Author SHA1 Message Date
Emil Ernerfeldt
8b51ae5dea Panels: Added Context::panel_left and panel_top
Context will keep track of the avilable space left after panels.
Windows will be constrained to that available space.
So add panels first, THEN add windows.
2020-10-21 18:26:28 +02:00
Emil Ernerfeldt
15c5e0b04d [menu] Fix minor size issue of menu bars 2020-10-21 17:46:57 +02:00
Emil Ernerfeldt
46ce9a4f3d [windows] Constrain windows to screen 2020-10-21 16:24:36 +02:00
Emil Ernerfeldt
39431afd03 [refactor] Rename Layer to LayerId for clarity 2020-10-21 14:39:31 +02:00
Emil Ernerfeldt
9b01c75e16 tesselator: produce fewer paint jobs with PaintCmd::Triangles 2020-10-21 11:09:42 +02:00
Emil Ernerfeldt
7fbb11481b Try to protect against invalid Triangles 2020-10-21 11:04:22 +02:00
Emil Ernerfeldt
bc5dbd718e Fix: Context::wants_mouse_input() now returns false if a mouse drag started outside of Egui 2020-10-20 14:52:18 +02:00
Emil Ernerfeldt
6bbdf08482 [refactor] Split DemoWindows out of demos::DemoApp 2020-10-19 23:06:11 +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
43813a71eb [app] Add egui::app::DummyStorage 2020-10-19 20:12:14 +02:00
Emil Ernerfeldt
7f8564b27a Expand and clarify project goals 2020-10-18 15:42:49 +02:00
Emil Ernerfeldt
222f534713 Add links to wgpu and winit integrations 2020-10-18 15:42:29 +02:00
Emil Ernerfeldt
12d387d7f5 Replace term "backend" with "integration" 2020-10-18 15:41:52 +02:00
Emil Ernerfeldt
92cfbe643c Add #![forbid(unsafe_code)] and safety badge 2020-10-18 15:40:23 +02:00
Emil Ernerfeldt
b8642b4db4 Do less rounding of positions to pixel boundaries
Fixes https://github.com/emilk/egui/issues/27
2020-10-18 14:47:12 +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
e56924dc4f Add check.sh helper 2020-10-17 11:03:10 +02:00
Emil Ernerfeldt
4e0ea32d99 fix clippy issues 2020-10-17 11:02:51 +02:00
Emil Ernerfeldt
4fc34cca45 [demo] Show detailed memory usage statistics of paint lists 2020-10-17 10:57:25 +02:00
Emil Ernerfeldt
570860ec5f [refactor] Create helper struct Mutex (with double-lock detection) 2020-10-17 10:38:22 +02:00
Emil Ernerfeldt
c2a0705c6f Add ability to override text color with visuals.override_text_color
This is kind of hacky; I may redesign this later
2020-10-14 16:32:29 +02:00
Emil Ernerfeldt
1bd45c35eb Collapsing header returns header and body responses 2020-10-14 15:26:31 +02:00
Emil Ernerfeldt
7561ccc189 ui.horizontal(...) etc returns Response
This is much more ergonomic than just returning a Rect (like previously).
The Response only contains `hover` checks.
2020-10-14 14:42:40 +02:00
Emil Ernerfeldt
7db71eb875 Use positional ids for sliders
This means two sliders now can use the same label
2020-10-14 12:39:46 +02:00
Emil Ernerfeldt
a35fe7da12 Export egui::demos::app::DemoApp
Closes https://github.com/emilk/egui/issues/26
2020-10-12 12:35:55 +02:00
Emil Ernerfeldt
73dc3484ae [refactor] Separate space allocation from cursor advancement 2020-10-12 08:50:06 +02:00
Emil Ernerfeldt
f0a45f5055 [refactor] Simplify Context with new struct Options 2020-10-12 08:49:01 +02:00
Emil Ernerfeldt
ad4f87831b [refactor] Make Ui lighter by using a clone-on-write Arc<Style> 2020-10-12 03:22:41 +02:00
Emil Ernerfeldt
4fab4b30a3 [egui_web] Publish new web demo 2020-10-10 14:12:40 +02:00
Emil Ernerfeldt
a0b8f83846 cargo update 2020-10-10 14:01:03 +02:00
Emil Ernerfeldt
42b433a204 [release] bump version numbers to 0.2.0 2020-10-10 14:00:07 +02:00
Emil Ernerfeldt
12afc356ee Misc code cleanup: use more ui.checkbox, ui.label, ui.button etc 2020-10-10 13:04:40 +02:00
Emil Ernerfeldt
5c469551df Switch argument order of ui.checkbox and ui.radio
`bool, text` is the more logical order, as it

* matches the visuals: `[x] text`
* puts the important part first
* more natually allows us to extend to checkboxes without a text
2020-10-10 12:49:02 +02:00
Emil Ernerfeldt
a2e8d1d32c [demo] Add compact version of the toggle_switch demo code 2020-10-10 12:33:48 +02:00
Emil Ernerfeldt
343648b94c [refactor] remove Ui::canvas (use Ui::allocate_space instead) 2020-10-10 12:25:01 +02:00
Emil Ernerfeldt
b01690c7b8 [culling] coarse culling of text lines, circles and boxes 2020-10-10 12:25:01 +02:00
Emil Ernerfeldt
9874921d06 [bench] benchmark demo app when everything is open 2020-10-10 12:19:36 +02:00
Emil Ernerfeldt
f30b354f77 [culling] Add debug option to ignore clip rectangles 2020-10-10 11:39:39 +02:00
Emil Ernerfeldt
2615d1bce1 Remove Rect::default() since there is no sensible default rectangle 2020-10-10 08:03:38 +02:00
Emil Ernerfeldt
adec27a7dd fix: clip_rect of combo box popup 2020-10-10 07:54:59 +02:00
Emil Ernerfeldt
8c17b45439 [demo] shorter toggle_switch code 2020-10-10 07:54:54 +02:00
Emil Ernerfeldt
c6fd30ea13 fix clippy issue 2020-10-08 22:24:55 +02:00
Emil Ernerfeldt
9f6301e121 Add logarithmic sliders to CHANGELOG.md 2020-10-08 22:24:42 +02:00
Emil Ernerfeldt
3f345b5963 Ui: clean up min_rect/max_rect related functions 2020-10-08 22:24:27 +02:00
Emil Ernerfeldt
ba98ea715f fix ui.expand_... functions to also expand max_rect 2020-10-08 17:58:28 +02:00
Emil Ernerfeldt
dbbe1cf063 Update to glium 0.28 2020-10-08 16:23:47 +02:00
Emil Ernerfeldt
3444666806 cargo update 2020-10-08 16:19:33 +02:00
Emil Ernerfeldt
8ff0bed259 [slider] Logarithmic sliders with support for zero and infinity
Logarithmic sliders will intelligently help you pick a good range
even if you inlcude zero or infinity. They also support crossing
the zero value, so you can have a slider span -INF to +INF.

The sliders now also supports reversed sliders (large -> small).
2020-10-07 09:59:49 +02:00
Emil Ernerfeldt
d5d8eeb172 [slider] use f64 internally for increased precision 2020-10-06 21:03:47 +02:00