Robbert van der Helm
05d97bb71e
Add a super simple egui generic UI widget
2022-03-05 19:16:20 +01:00
Robbert van der Helm
9267a8371c
Add DPI scaling support
...
That hopefully works.
2022-03-05 13:37:35 +01:00
Robbert van der Helm
4c0b07c578
💥 Move re-exports to a prelude module
...
So you can import everything at once, because you're likely going to
need at least 90% of it anyways.
2022-03-03 23:23:51 +01:00
Robbert van der Helm
f581294d7b
Update rustdoc formatting for links
...
Apparently it showed this text verbatim, and not in monospace.
2022-03-03 23:05:12 +01:00
Robbert van der Helm
be4bbd4400
Allow nested parameter structs
...
See the Parameters docstring for the caveats.
2022-03-03 20:38:28 +01:00
Robbert van der Helm
d688174b8b
Require Send+Sync on the editor handle
2022-03-03 15:40:16 +01:00
Robbert van der Helm
07d8f81f44
Update to egui 0.17
2022-02-27 16:49:18 +01:00
Robbert van der Helm
b40c43a862
Temporarily use egui's system scale factor
...
Until we support HiDPI ourselves. This fixes #1 .
2022-02-27 12:59:41 +01:00
Robbert van der Helm
f645b6a92f
Relicense under the ISC license
2022-02-12 16:04:46 +01:00
Robbert van der Helm
e1f80e203a
Render the ParamSlider value
2022-02-09 19:45:54 +01:00
Robbert van der Helm
87b31f4c2f
Move the main slider to a function
2022-02-09 19:17:46 +01:00
Robbert van der Helm
cd50d5bb77
Remove todo about wonky modifiers
...
This has been fixed by https://github.com/RustAudio/baseview/pull/117 .
2022-02-09 19:10:58 +01:00
Robbert van der Helm
057d0cbf56
Use a patched patched baseview fixing modifiers
...
This should fix https://github.com/RustAudio/baseview/issues/116 .
2022-02-09 18:41:30 +01:00
Robbert van der Helm
64da9c52c2
Add todo about modifier handling in egui-baseview
2022-02-09 12:28:38 +01:00
Robbert van der Helm
7eb8622736
Drag very granularly with Shift+Drag
2022-02-09 12:24:01 +01:00
Robbert van der Helm
9dfac991c8
Also reset parameters with Ctrl+Click
2022-02-09 11:51:42 +01:00
Robbert van der Helm
fe3ea5d9f8
Don't change a parmeter if it wouldn't do anything
2022-02-09 11:51:30 +01:00
Robbert van der Helm
cd683187e0
Allow resetting parameters by double clicking
2022-02-09 11:51:30 +01:00
Robbert van der Helm
882ba8f61d
Don't use smart aim
...
Probably not needed here
2022-02-09 11:36:10 +01:00
Robbert van der Helm
8e7a86262f
Handle parameter edit begin and release
2022-02-09 11:34:58 +01:00
Robbert van der Helm
a1c6d1d30a
Scale the dragged slider color based on original
2022-02-09 11:32:19 +01:00
Robbert van der Helm
7a50cc3383
Add HSV scaling utilities
2022-02-09 11:31:59 +01:00
Robbert van der Helm
dbc6bf993b
Don't fill the slider if it's empty
2022-02-09 11:19:49 +01:00
Robbert van der Helm
e2524a2d81
Handle stepped non-float parameters
...
The widget now snaps to the correct range. This would always be
displayed this way internally, but now we also won't tell the host about
the invalid values.
2022-02-09 11:18:38 +01:00
Robbert van der Helm
46a7d8a261
Make the ParamSlider generic over all param types
2022-02-09 11:13:51 +01:00
Robbert van der Helm
857cf876e8
Add the beginnings of a parameter slider widget
2022-02-09 01:07:57 +01:00
Robbert van der Helm
5e65f5b77a
Permissively license the egui integration crate
...
The widgets that are going to be there are probably going to be useful
to others and may need some modification, so this makes more sense.
2022-02-08 23:27:46 +01:00
Robbert van der Helm
2417f9e8c0
Remove AtomicCell re-export
...
This is no longer part of the public API.
2022-02-08 20:38:10 +01:00
Robbert van der Helm
07f9a18d3d
Rename EguiState::open to is_open
...
This makes it more clear that it doesn't actually open the editor.
2022-02-08 20:33:08 +01:00
Robbert van der Helm
4260c5441c
Add a way to know whether the egui editor is open
2022-02-08 20:16:39 +01:00
Robbert van der Helm
02115d5004
Use a patched {egui-,}baseview for X11 GL contexts
2022-02-07 21:58:59 +01:00
Robbert van der Helm
5549fd4185
Add a todo for checking for open egui GUIs
2022-02-07 11:53:09 +01:00
Robbert van der Helm
556bec7c0b
Move editor handling to its own struct
...
This makes the API much, much nicer (especially consuming the egui
wrapper), and it also avoids having to lock the plugin instance which is
obviously very bad if the plugin is also supposed to be processing audio
on another thread.
2022-02-06 17:12:57 +01:00
Robbert van der Helm
3ede5ed751
Move the TODO on GUI opening xruns
2022-02-06 15:32:54 +01:00
Robbert van der Helm
67e9cae37b
Explicitly close the egui-baseview window
...
It's supposed to do this on drop, but it doesn't seem to work.
2022-02-06 15:09:35 +01:00
Robbert van der Helm
92c090766a
Add TODOs for things that need fixing
2022-02-06 15:01:19 +01:00
Robbert van der Helm
ea18f62d02
Always redraw egui GUIs
2022-02-06 14:09:11 +01:00
Robbert van der Helm
40d7799df9
Don't handle context in create_egui_editor
...
There's no need for special handling here, just let the plugin do its
own thing.
2022-02-06 14:02:55 +01:00
Robbert van der Helm
f1b12e747c
Remove unused import
2022-02-06 01:40:25 +01:00
Robbert van der Helm
47b6631283
Revert "Initialize the egui GUI using the update function"
...
This reverts commit 5c9ac31408
.
2022-02-06 01:02:26 +01:00
Robbert van der Helm
cc3d2bcba0
Re-export egui
2022-02-06 00:54:13 +01:00
Robbert van der Helm
5c9ac31408
Initialize the egui GUI using the update function
2022-02-06 00:51:02 +01:00
Robbert van der Helm
021c183331
Add an egui editor adapter
2022-02-06 00:22:33 +01:00