Simon Leiner
4affa40244
Preserve the order of non-grouped nested parameters
2022-11-13 20:38:48 +01:00
Simon Leiner
d9797a606e
Move handling of NestedParams into a separate function
2022-11-13 20:38:48 +01:00
Simon Leiner
797c641efb
Add tests for current behaviour of #[derive(Params)]
2022-11-13 20:38:48 +01:00
Robbert van der Helm
c92c2a189b
Fix conditional caching on Windows CI runners
...
Oops.
2022-11-13 18:46:49 +01:00
Robbert van der Helm
15ce644dec
Clarify ancestor usage in workspace detection
2022-11-13 18:36:52 +01:00
Robbert van der Helm
08ddd9c42a
For cargo_nih_plug workspace root detection
...
This is a lot simpler now and it simply considers the topmost ancestor
directory of either `$CARGO_MANIFEST_DIR` or the current working
directory containing a `Cargo.toml` file.
2022-11-13 18:33:15 +01:00
Robbert van der Helm
148fc3379b
Change GitHub CI cache keys
...
They changed it so `runner.name` is no longer the 'name' of the runner
and it's now a generic string in the format `Github Actions $idx`.
2022-11-12 02:22:46 +01:00
Robbert van der Helm
2816b9418e
Account for DPI scaling in granular dragging
2022-11-12 02:00:18 +01:00
Robbert van der Helm
e13d79b288
Fix X-Y pad tooltip position with DPI scaling
2022-11-12 01:55:42 +01:00
Robbert van der Helm
d8729ffd34
Add a minimum width to tooltip width comparison
...
To make it flicker around less at the right edge of the X-Y pad.
2022-11-12 01:45:26 +01:00
Robbert van der Helm
6f34eb3129
Add a 'Q: ' prefix to the resonance in tooltip
2022-11-12 01:44:53 +01:00
Robbert van der Helm
6966d00dd7
Fix cents in s2v_f32_hz_then_khz()
...
The trimming was not done correctly, and cents were treated as partial
octaves.
2022-11-12 01:32:09 +01:00
Robbert van der Helm
52eb85201e
Use new frequency+note name formatter in Diopser
...
This is really nice for the tooltip.
2022-11-12 01:27:12 +01:00
Robbert van der Helm
79f5bd8659
Add a formatter for frequencies with note name
...
This is the same as the 'Hz then kHz' formatter but it also appends the
note name and optionally the number of cents.
2022-11-12 01:26:27 +01:00
Robbert van der Helm
c3cd2fb0dd
Fix v2s_i32_note_formatter() for negative numbers
...
Otherwise this would wrap around or panic in debug builds.
2022-11-12 01:25:33 +01:00
Robbert van der Helm
59456a2973
Remove 128 note MIDI limit in frequency parser
...
This is useful when the value->string function can go outside of the
standard 128 note range.
2022-11-12 01:25:33 +01:00
Robbert van der Helm
5330a7d938
Add a version of util::midi_note_to_freq for f32
2022-11-12 01:25:33 +01:00
Robbert van der Helm
761f0b0a80
Add cents support to s2v_f32_hz_then_khz()
2022-11-12 01:25:33 +01:00
Robbert van der Helm
8b8cbf1952
Add the X-Y pad tooltip
...
With some fancy positioning
2022-11-12 00:43:28 +01:00
Robbert van der Helm
cf40eb208d
Add granular dragging for the X-Y pad
2022-11-12 00:00:21 +01:00
Robbert van der Helm
910afe7ec4
Wrap ParamSlider granular dragging in a struct
2022-11-11 23:58:18 +01:00
Robbert van der Helm
a2251509ee
Move the octaves label to filter spread unit
...
Instead of having this in the parameter's name. Looks better in the GUI.
2022-11-11 21:52:00 +01:00
Robbert van der Helm
b2f6175d54
Add bypass smoothing for Diopser
...
Using a simple equal-power crossfade.
2022-11-11 21:23:39 +01:00
Robbert van der Helm
ec329143ae
Add a todo for a Diopser bypass crossfade
2022-11-11 20:44:10 +01:00
Robbert van der Helm
e42970c013
Modify Y-parameter before X-parameter
...
So the X-parameter shows up as last touched in the DAW.
2022-11-11 20:31:15 +01:00
Robbert van der Helm
fbe1fa1d4a
Set X-Y pad value on mouse down
2022-11-11 20:29:13 +01:00
Robbert van der Helm
27d42797ee
Add basic dragging gestures to the X-Y pad
2022-11-11 20:26:39 +01:00
Robbert van der Helm
4f9a0eb117
Mention Y-coordinate direction in remapping utils
...
Since the direction is probably opposite of what you want.
2022-11-11 20:26:39 +01:00
Robbert van der Helm
3510350425
Add styling for the X-Y pad handle
2022-11-11 20:26:39 +01:00
Robbert van der Helm
e24adf4c67
Add the basis for an X-Y pad widget
...
The handle does not have any styling yet, and there's also no way to
interact with the widget.
2022-11-11 20:26:39 +01:00
Robbert van der Helm
8088630803
Always use floating point values for pixels
2022-11-11 20:26:39 +01:00
Robbert van der Helm
7d42788be2
Add back a ParamWidgetBase::view with explicit cx
...
The version that returns a callback is nice, but it's a bit awkward when
dealing with multiple parameters.
2022-11-11 20:26:39 +01:00
Robbert van der Helm
3cdae526fd
Rename ParamWidgetBase::view
...
So we can also have a version that takes an explicit `cx` parameter.
2022-11-11 20:26:39 +01:00
Robbert van der Helm
d280c2d767
Open Diopser GH page when clicking on the title
2022-11-11 20:26:39 +01:00
Robbert van der Helm
aa7d5195ce
Grab plugin URLs from the Cargo.toml file
2022-11-11 20:26:39 +01:00
Robbert van der Helm
d4b93cfdee
Add URLs to the plugin Cargo.toml files
2022-11-11 20:26:39 +01:00
Robbert van der Helm
72dbce92eb
Add scaffolding for the X-Y pad
2022-11-11 20:26:39 +01:00
Robbert van der Helm
6e103baf4d
Show Diopser version in the GUI
2022-11-11 20:26:39 +01:00
Robbert van der Helm
837ef14e1d
Bump Diopser version to 0.3.0
...
In preparation for this new GUI to be completed, or I may forget.
2022-11-11 20:26:30 +01:00
Robbert van der Helm
cce10d79ca
Move Diopser's stylesheet
...
Since there's now a dedicated editor module directory
2022-11-11 17:34:35 +01:00
Robbert van der Helm
3fbc06e819
Add more Diopser GUI scaffolding
2022-11-11 17:26:24 +01:00
Robbert van der Helm
60d4490998
Remove unused stylesheet in gain_gui_vizia
2022-11-11 16:21:47 +01:00
Robbert van der Helm
922a81f654
Drop all mentions of vizia point scale
...
It does use pixels instead of points.
2022-11-11 16:21:30 +01:00
Robbert van der Helm
884683a190
Drop ParamLabel again
...
This isn't going to work with vizia right now.
2022-11-11 14:13:05 +01:00
Robbert van der Helm
c9c4116e9d
Add part of a vertical ParamLabel
...
Vizia doesn't seem to support this right now, so I'll drop this again.
2022-11-11 14:11:14 +01:00
Robbert van der Helm
33263b825e
Add a widget for labels with Alt+click text entry
2022-11-11 14:11:14 +01:00
Robbert van der Helm
89af7e366f
Refer to ParamSlider for vizia param mapping docs
...
Instead of duplicating this everywhere.
2022-11-11 14:11:10 +01:00
Robbert van der Helm
b93cd08dfa
Default cpal backend to 48 kHz sample rate
...
This is probably a safer default for most regular computers.
2022-11-11 03:15:05 +01:00
Robbert van der Helm
ec061cd0e5
Format the dry level control as decibels
2022-11-11 03:15:05 +01:00
Robbert van der Helm
5b3c327e29
Handle -inf dB in gain<->decibel formatters
2022-11-11 03:15:05 +01:00