1
0
Fork 0
Commit graph

1465 commits

Author SHA1 Message Date
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