Robbert van der Helm
30b913e159
Don't use direct Param initialization in exmaples
...
Since you now also need to specify the default field you probably
shouldn't use this anymore.
2022-03-21 13:29:03 +01:00
Robbert van der Helm
40d99a5cb3
Automatically implement Param::set_normalized_value()
2022-03-21 13:28:59 +01:00
Robbert van der Helm
021d175264
Use a default implementation for Param::normalized_value()
2022-03-21 13:28:59 +01:00
Robbert van der Helm
f084f14095
Refactor GUIs to use param's own default value
...
This removes the need to pass a lot of these `ParamSetter`s and
`GuiContext`s around. We also don't need explicit events to reset a
parameter anymore since you can get this information from the parameter
itself.
2022-03-21 13:11:36 +01:00
Robbert van der Helm
a844051054
Store defaults on Param objects
...
And add methods for querying them.
2022-03-21 12:49:59 +01:00
Fredemus
8bbcb1a093
add panning formatter
2022-03-20 21:37:50 +01:00
Fredemus
41db682c20
i32_note_formatter + from_f32_lin_to_db
2022-03-20 21:15:17 +01:00
Fredemus
f0ee2739f1
a few more formatters
2022-03-20 16:08:43 +01:00
Robbert van der Helm
d5d54f0c06
Fix generic UIs after last commit
2022-03-20 13:37:01 +01:00
Robbert van der Helm
c22e522629
Greatly simplify Params trait
...
This now is a single vector with all of the information in the correct
order instead of the hashmaps and a vector. This avoids deduplication,
and it especially makes manual `Params` implementations a lot more
convenient since you can't mess up with mismatching IDs between the
methods.
To accommodate exactly this, the persistent fields methods also have a
default implementation and the trait has been marked as `unsafe` since
it's the programmer's responsibility to make sure these `ParamPtr`s will
remain valid.
2022-03-20 13:05:02 +01:00
Robbert van der Helm
8371f767ce
Fix typo in debug assert macros
2022-03-20 12:44:29 +01:00
Robbert van der Helm
a6f4202ac5
Add a todo for combining the Params methods
2022-03-20 02:44:13 +01:00
Robbert van der Helm
b9d79771cc
Use String instead of &'static str in Params
...
This may hurt performance in generic UIs a bit, but it will allow you to
programatically generate custom Params implementations for repeated
Parameters structs.
2022-03-20 02:14:18 +01:00
Robbert van der Helm
1a9db3ab8e
Temporarily add more widgets to vizia Gain GUI
2022-03-20 01:23:44 +01:00
Robbert van der Helm
4f9a83860b
Replace Binding with two display properties
2022-03-20 01:21:51 +01:00
Robbert van der Helm
d8f8d545dd
Update vizia with font DPI scaling fiz
2022-03-19 23:57:14 +01:00
Robbert van der Helm
c5d4671f06
Add a ParamSlider style that overlays all options
2022-03-19 19:42:50 +01:00
Robbert van der Helm
c3134fb5ef
Add a todo for another ParamSlider style
2022-03-19 19:31:07 +01:00
Robbert van der Helm
9e8b498676
Add a ParamSlider display style highlighting step
...
This might work better for some types of discrete parameters.
2022-03-19 19:29:19 +01:00
Robbert van der Helm
4c5d61057e
Fix typos
2022-03-19 19:24:08 +01:00
Robbert van der Helm
64eaf37370
Add option to ParamSlider to always fill from left
2022-03-19 18:49:49 +01:00
Robbert van der Helm
80db6121f3
Add some more styling for the vizia ParamSlider
...
This still doesn't really work well since we can't focus the textbox.
2022-03-19 17:47:50 +01:00
Robbert van der Helm
a6e35cfaa9
Add methods for normalized parameter stepping
...
This is mostly useful for GUIs.
2022-03-19 16:12:56 +01:00
Robbert van der Helm
95370667d7
Rearrange the Param methods
2022-03-19 16:09:31 +01:00
Robbert van der Helm
d9330628c0
Add stepping functions to Param
...
This can be useful for GUI widgets.
2022-03-19 16:06:20 +01:00
Robbert van der Helm
629619256e
Add some text entry handling for vizia ParamSlider
...
This will need to wait for https://github.com/vizia/vizia/issues/85 as
right now it's not yet possible to get this to behave correctly (other
than perhaps sending manual WindowEvents on the next frame).
2022-03-19 15:29:10 +01:00
Robbert van der Helm
41d30561fa
Add a class to the vizia ParamSlider label
...
So it can be targetted for styling
2022-03-19 13:10:20 +01:00
Robbert van der Helm
47fe8c35f7
Compensate for borders in iced ParamSlider
2022-03-19 02:19:53 +01:00
Robbert van der Helm
2e18ae0ebc
Fix Shift+drag start behavior for iced and vizia
...
The previous calculation was incorrect as it would cause the value to
jump a bit.
2022-03-19 02:18:30 +01:00
Robbert van der Helm
92908e0232
Add more remapping functions for vizia
2022-03-19 02:08:00 +01:00
Robbert van der Helm
fe5bdf3b88
Snap back when releasing shift on vizia slider
2022-03-19 01:48:57 +01:00
Robbert van der Helm
bd0e126698
Compensate for border width in vizia remapping
2022-03-19 01:40:17 +01:00
Robbert van der Helm
de80c53c14
Mention the -1 pixel offset
2022-03-19 01:22:38 +01:00
Robbert van der Helm
aed3c14229
Add the ParamSlider to the VIZIA Gain GUI
2022-03-19 01:17:36 +01:00
Robbert van der Helm
64950055ea
Implement most of the iced ParamSlider for Vizia
2022-03-19 01:17:13 +01:00
Robbert van der Helm
d8e8d80402
Add helpers for keyboard modifiers in vizia
2022-03-19 00:38:26 +01:00
Robbert van der Helm
e2c691ba55
Add default styling for nih_plug_vizia GUIs
2022-03-18 19:12:38 +01:00
Robbert van der Helm
f43d209a60
Add a .plain_value() to ParamPtr
...
Useful for snapping when you don't have access to the concrete parameter
type.
2022-03-18 18:10:22 +01:00
Robbert van der Helm
fb60f3a28b
Remove unused Param::set_from_string
...
This method is a bit more efficient than converting the string to a
normalized value and then setting the parameter using that but it's not
used right now and it adds a form of redundancy.
2022-03-18 17:53:38 +01:00
Robbert van der Helm
47901d9b10
Rename NormalizedParamEvent to RawParamEvent
2022-03-18 17:45:27 +01:00
Robbert van der Helm
efaa4ccdbd
Add more convenient non-type erased param events
2022-03-18 15:52:22 +01:00
Robbert van der Helm
4ce5f359d6
Add parameter setting events for vizia
2022-03-18 15:26:19 +01:00
Robbert van der Helm
7460a12d98
Consider generic Params structs in derive macro
2022-03-18 14:09:17 +01:00
Robbert van der Helm
ed3a17bf33
Update vizia
...
Now setting a font size on the `*` selector works.
2022-03-18 12:28:26 +01:00
Robbert van der Helm
87d9136b6f
Use thinner fonts for vizia
...
Because they look like they're one weight too heavy.
2022-03-18 01:37:24 +01:00
Robbert van der Helm
da4523ac4c
Add a thin weight for Noto Sans
2022-03-18 01:37:22 +01:00
Robbert van der Helm
2c62b13ba5
Add the start of a Gain GUI port to vizia
2022-03-18 01:28:18 +01:00
Robbert van der Helm
fd6836b891
Add font re-exports for vizia
2022-03-18 00:23:11 +01:00
Robbert van der Helm
fb5ce3c670
Add back the egui Gain GUI version
2022-03-17 23:25:42 +01:00
Robbert van der Helm
dc9f1bff45
Rename Gain GUI to Gain GUI (iced)
2022-03-17 23:22:47 +01:00