Emil Ernerfeldt
ef218e8ba8
Panels: make `Side` and `TopBottomSide` public
...
Closes https://github.com/emilk/egui/issues/799
2021-10-16 15:35:07 +02:00
Emil Ernerfeldt
6f699b3391
Replace every ... with … like some sort of crazy person
...
Also fix some small typos
Closes https://github.com/emilk/egui/pull/736
2021-10-13 11:52:34 +02:00
Emil Ernerfeldt
85941033e8
Simplify and improve http demo app
...
Move demo of POST to the ehttp crate instead
2021-10-13 11:47:57 +02:00
Emil Ernerfeldt
fe2094af14
Fix visual clipping of singleline TextEdit
2021-10-12 22:35:31 +02:00
Emil Ernerfeldt
c42afd3941
Fix missing spaces between labels in horizontal layouts
2021-10-12 22:23:53 +02:00
Cristian Dinu
1c4237097f
Slider, by default clamp to range ( #789 )
...
* Slider, by default clamp to range
* Update change log.
2021-10-12 21:15:32 +02:00
Emil Ernerfeldt
fc45b6fdf2
Fix scroll area size clipping to screen rect
2021-10-10 17:14:22 +02:00
Emil Ernerfeldt
e547b149ca
Improve docs, especially of epaint, and add epaint/CHANGELOG.md
2021-10-10 15:35:13 +02:00
Emil Ernerfeldt
88d087b462
Fix bad docstring
2021-10-09 15:55:18 +02:00
Emil Ernerfeldt
bc54a49413
Optimization: use IdHasher for AnyMap
2021-10-09 15:55:18 +02:00
Emil Ernerfeldt
cca11ea9cc
Optimization: less HashMap, more AHashMap
2021-10-09 15:22:36 +02:00
Emil Ernerfeldt
22a3a75eb5
Optimization: replace HashSet uses with AHashSet
2021-10-09 14:15:45 +02:00
Emil Ernerfeldt
4dcdd014d6
Optimization: introduce IdMap
2021-10-09 14:10:38 +02:00
Ben Postlethwaite
5799758c2b
implement stick-to-end scroll ( #765 )
...
* implement stick-to-end scroll
* improve comment grammar
* accept emilk suggestion for demo text tweak
Co-authored-by: Emil Ernerfeldt <emil.ernerfeldt@gmail.com>
* request repaint on each frame to show incoming scroll demo rows
* simplify pub api + doc strings
* disable scroll_stuck_to_end when wheel-scrolling or dragging
Co-authored-by: Emil Ernerfeldt <emil.ernerfeldt@gmail.com>
2021-10-09 12:59:42 +02:00
Stock84
cd2227814f
Implement `bytemuck` behind a feature ( #775 )
2021-10-07 22:30:15 +02:00
Emil Ernerfeldt
ce8d863249
auto-shrink ScrollArea to content size
...
Unless the user disables it with `ScollArea::auto_shrink([false; 2])`.
2021-10-06 23:51:03 +02:00
Emil Ernerfeldt
a1bf5aff47
Add Memory::caches for caching things from one frame to the next
2021-10-06 17:54:45 +02:00
Emil Ernerfeldt
613c0b29f6
TextEdit: replace monomorphization with &mut dyn TextBuffer
2021-10-02 21:50:24 +02:00
Emil Ernerfeldt
8d854391df
TextEdit can now show immutable text
2021-10-02 21:43:17 +02:00
Emil Ernerfeldt
8ce7fadc9f
TextEdit: make sure it is wide enough when wrap_width isn't respected
2021-10-02 21:33:07 +02:00
Emil Ernerfeldt
1537171205
AnyMap: print deserialization errors to stderr
2021-10-02 21:30:52 +02:00
Emil Ernerfeldt
f59abd9684
Clean up some macro syntax
2021-10-02 21:08:00 +02:00
Emil Ernerfeldt
f0868c2f07
Code editor demo: nice syntax highlighting with customizable theme
2021-10-01 21:29:33 +02:00
Emil Ernerfeldt
96557a4fa6
Add egui::widgets::global_dark_light_mode_buttons
2021-10-01 21:28:12 +02:00
Emil Ernerfeldt
4c78f61a96
egui any maps: add get_or + #[inline]
2021-10-01 21:08:17 +02:00
Emil Ernerfeldt
863e6cb07d
expose egui::TextFormat
2021-10-01 19:25:15 +02:00
Emil Ernerfeldt
981b812f68
Smaller and nicer color picker
2021-10-01 19:24:36 +02:00
Emil Ernerfeldt
76cdbe2cf8
Add better documentation for epi::NativeOptions::drag_and_drop_support
...
Closes https://github.com/emilk/egui/issues/747
2021-09-30 19:40:21 +02:00
Simon Persson
7df2408482
Fix disabled textedit blocking focus shift. ( #748 )
...
* Fix disabled textedit blocking focus shift.
Fixes #732 . Ui::interact was being called twice for the frame rect
regardless of enabled status which was causing problems for kb focus.
Now the interact function is called zero or one time.
* Apply clippy suggestion
Co-authored-by: Emil Ernerfeldt <emil.ernerfeldt@gmail.com>
Co-authored-by: Persson <Simon.Persson@nov.com>
Co-authored-by: Emil Ernerfeldt <emil.ernerfeldt@gmail.com>
2021-09-30 18:54:19 +02:00
Emil Ernerfeldt
5539dbe620
Add separate serialize feature and better persitence control ( #753 )
...
* Rename epaint feature "persistence" to "serialize"
* Add separate "serialize" feature to egui
* egui_demo_lib: separate serialize and persistence features
* Add App::persist_native_window and App::persist_egui_memory
Controls what gets persisted
2021-09-29 08:45:13 +02:00
Emil Ernerfeldt
f2dd3dfdd9
Fix popups sometimes getting clipped by panels
2021-09-28 22:19:03 +02:00
Emil Ernerfeldt
711defddb8
Show tooltips above widgets on touch screens
2021-09-28 22:18:22 +02:00
Emil Ernerfeldt
2e83e36146
Use ahash for Id and other things that need hashing
2021-09-28 17:56:24 +02:00
Emil Ernerfeldt
1b36863248
Split out new crate egui-winit from egui_glium ( #735 )
2021-09-28 17:33:28 +02:00
Emil Ernerfeldt
ba0e3780a1
Add epaint::util::hash function for hashing a value
2021-09-26 03:16:12 +02:00
Emil Ernerfeldt
976260c2bd
Better error if neither single_threaded or multi_threaded features is on
2021-09-25 05:26:45 +02:00
Emil Ernerfeldt
a5a5d6176d
Improve the frame around ImageButton
...
Helps https://github.com/emilk/egui/issues/721
2021-09-20 22:37:21 +02:00
Emil Ernerfeldt
e7cfda4941
Shape refactor ( #705 )
...
* More introspection stats about vertices/indices etc
* more serde derive
* #[inline] to Shape constructors
* Introduce RectShape
* Introduce CircleShape
* Introduce PathShape
* More serde derive
* impl Copy for RectShape and CircleShape
* Simplify some code
* More serde derive
* Add helpers for appending more input or output
* Serde derives for RawInput
* Rename Fonts::from_definitions to Fonts::new
* Add Output::take
* refactor EguiGlium slightly
* Derive PartialEq for RawInput
* Improve egui::util::History interface
* tweaks
* Improve History filter: add minimum length
* Calculate galley bounding rect
* tessellator: cull line segments and paths
* tessellator: cull meshes
* Fix bug in History bandwidth estimator
2021-09-20 21:36:56 +02:00
Emil Ernerfeldt
67bf716b0e
Hide DragValue tooltips unless user set Style::explanation_tooltips ( #708 )
...
* Hide DragValue tooltips unless user set Style::explanation_tooltips
Closes https://github.com/emilk/egui/issues/548
Closes https://github.com/emilk/egui/pull/704
* Silence drag_angle_tau tooltip too
2021-09-12 23:05:23 +02:00
Emil Ernerfeldt
f37180f7dc
Bump MSRV (Minimum Supported Rust Version) to 1.54.0 ( #703 )
...
1.51.0 clippy has been giving me trouble (not reporting all problems),
and so I take the easy way out and just bump MSRV.
We will upgrade to 1.56.0 once it comes around anyway
to get access to that sweet disjoint capture in closures
(https://doc.rust-lang.org/nightly/edition-guide/rust-2021/disjoint-capture-in-closures.html )
2021-09-09 00:16:06 +02:00
Emil Ernerfeldt
ae6418edf3
clippy fix
2021-09-08 23:40:44 +02:00
Emil Ernerfeldt
a76b81647c
Hide tooltips while dragging a widget
...
Also: don't register as click if the
pointer has been pressed for too long.
2021-09-08 23:26:21 +02:00
Emil Ernerfeldt
241667b078
Reduce monomorphization, reducing wasm size by around 3%
2021-09-07 21:33:10 +02:00
Emil Ernerfeldt
bb034e2e6c
Improve documentation of different ui layout functions
2021-09-07 20:48:30 +02:00
Emil Ernerfeldt
acb5501fe4
Add justified and/or center- and right-aligned text
...
Label text will now be centered, right-aligned and/or
justified based on the layout.
Galleys are no longer always pivoted in the left top corner,
so now have a Rect rather than just a size.
2021-09-07 20:37:50 +02:00
Emil Ernerfeldt
d23982d83e
Window bounds fix: handle infinite drag_bounds
2021-09-07 19:55:37 +02:00
Emil Ernerfeldt
aef23753ca
Fix clip rectangle of windows that don't fit the central area.
2021-09-07 19:34:34 +02:00
Emil Ernerfeldt
5592124ad5
TextEdit: paint cursor on top of text
...
This is so that we see the cursor even when the text galley has
background colors, like `code` section in easymark do.
2021-09-05 18:59:35 +02:00
Emil Ernerfeldt
f9afdfa143
TextEdit: left/right arrows move cursor to start/end of selection
...
Closes https://github.com/emilk/egui/issues/611
2021-09-05 11:11:31 +02:00
Emil Ernerfeldt
d9f3596475
docs: explain auto-shrinking panels/windows and how to work around it
...
related to https://github.com/emilk/egui/issues/696
2021-09-05 09:40:25 +02:00