1
0
Fork 0
Commit graph

88 commits

Author SHA1 Message Date
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 c0c6677bcf Add finer steps to ParamSlider 2022-11-11 03:15:05 +01:00
Robbert van der Helm e583b8e777 Add finer step sizes to parameters 2022-11-11 03:15:05 +01:00
Robbert van der Helm e184e6d8a6 Consome scrolling events
This sort of fixes using these in ScrollViews
2022-11-11 03:15:05 +01:00
Robbert van der Helm fd85155fbc Add scrolling support to ParamButton 2022-11-11 03:15:05 +01:00
Robbert van der Helm 3a064ae705 Add scrolling support to ParamSlider 2022-11-11 03:15:05 +01:00
Robbert van der Helm bf0f4d56fe Allow overriding ParamSlider display value 2022-11-11 03:15:05 +01:00
Robbert van der Helm 1c3ac492b0 Rearrange ParamSlider fields 2022-11-11 03:15:05 +01:00
Robbert van der Helm 677f21005d Break ParamSlider up into functions 2022-11-11 03:15:05 +01:00
Robbert van der Helm b2da26ecd7 Add prefix to plain_value() and normalized_value()
To make it clearer that these functions include monophonic modulation.
When creating GUI widgets, you should be using the unmodulated variants.
2022-11-11 03:15:05 +01:00
Robbert van der Helm 3a22b12d8f Prevent rustfmt from breaking
It didn't like the comment in the middle of a pattern.
2022-11-11 03:15:05 +01:00
Robbert van der Helm a73f76fbcf Simplify ParamButton 2022-11-11 03:15:05 +01:00
Robbert van der Helm 14cb1cb679 Move Vizia view param wrangling to helper struct
This cleans up the main widget's code a lot. We can move some more
behavior to this helper to reduce duplication.
2022-11-11 03:15:05 +01:00
Robbert van der Helm 52130373a3 Simplify param button checked state 2022-11-11 03:15:05 +01:00
Robbert van der Helm 3f0922b5c0 Add special styling for bypass buttons 2022-11-11 03:15:05 +01:00
Robbert van der Helm 7d4351e4fa Add a parameter button widget
Useful for toggling boolean parameters.
2022-11-11 03:15:05 +01:00
Robbert van der Helm e8002730a0 Fix clippy lints 2022-11-05 14:19:47 +01:00
Robbert van der Helm 821bb90194 Update vizia, cpal, and other dependencies
Vizia wouldn't compile anymore because of mixed create versions in
femtovg, so the fork had to be updated. cpal had a similar thing with
nix and alsa.
2022-10-23 22:32:47 +02:00
Robbert van der Helm 3ba62c4aab Treat triple clicks in Vizia ParamSlider as click 2022-10-08 15:52:36 +02:00
Robbert van der Helm fc55a519fa Consume vizia ParamSlider events as appropriate 2022-10-08 15:48:18 +02:00
Robbert van der Helm 33d956a96b Update Vizia 2022-10-08 15:21:01 +02:00
Robbert van der Helm ca22806f8c Fix double click handling after Vizia update 2022-09-22 20:07:04 +02:00
Robbert van der Helm 85543e1668 Update Vizia 2022-09-22 19:53:21 +02:00
Robbert van der Helm 21078bcae0 Fix Vizia resize handle for HiDPI windows 2022-09-22 19:48:08 +02:00
George Atkinson ec79bb36be Fix some spelling errors 2022-09-21 17:32:24 +01:00
George Atkinson eb33a55fcc Move ParamSliderInternal variables to ParamSlider 2022-09-21 17:30:02 +01:00
Robbert van der Helm 7b02217ad4 Map from the Params object in GenericUi
Otherwise reactivity doesn't work.
2022-07-24 15:15:47 +02:00
Robbert van der Helm 8ae93cc6ab Remove Copy bound on ParamSlider 2022-07-24 15:15:47 +02:00
Robbert van der Helm f812374ad0 Make it easier to reuse generic UI widget drawing 2022-07-24 15:15:47 +02:00
Robbert van der Helm 2fbf4ca00d Remove Copy requirement from Vizia generic UI
This now uses a dummy lens to map to the parameter.
2022-07-24 15:15:47 +02:00
Robbert van der Helm 70f50018ad Use regular slides for >3 step parameters 2022-07-24 15:15:47 +02:00
Robbert van der Helm b7bfa5f18e Update Vizia
With two months of breaking changes, hooray! But everything should still
work after some bug squashing in Vizia.
2022-06-18 01:59:57 +02:00
Robbert van der Helm ac28f4d7bf Show modulation separately in VIZIA ParamSlider 2022-05-01 20:08:11 +02:00
Robbert van der Helm 9acd312768 Parmaeters are not real, they can't hurt you 2022-04-24 19:46:07 +02:00
Robbert van der Helm 9ab07cf4eb Update Vizia
Text sizes are still broken.
2022-04-24 18:12:06 +02:00
Robbert van der Helm eb49b0962e Revert "Revert "Update the Vizia fork""
This reverts commit 0fa6eab4d3.
2022-04-20 01:01:28 +02:00
Robbert van der Helm 0fa6eab4d3 Revert "Update the Vizia fork"
This reverts commit f646ffcfb5.

Text sizes are broken with the current master branch version of Vizia.
2022-04-20 00:40:21 +02:00
Robbert van der Helm f646ffcfb5 Update the Vizia fork 2022-04-20 00:33:14 +02:00
Robbert van der Helm 5b03ae8d0e Update vizia fork 2022-04-07 18:44:37 +02:00
Robbert van der Helm 083885a40c Rework Params trait API with Arc instead of Pin
This is a breaking change requiring a small change to plugin
implementations.

The reason why `Pin<&dyn Params>` was used was more as a hint to
indicate that the object must last for the plugin's lifetime, but `Pin`
doesn't enforce that. It also makes the APIs a lot more awkward.
Requiring the use of `Arc` fixes the following problems:

- When storing the params object in the wrapper, the `ParamPtr`s are
  guaranteed to be stable.
- This makes it possible to access the `Params` object without acquiring
  a lock on the plugin, this is very important for implementing
  plugin-side preset management.
- It enforces immutability on the `Params` object.
- And of course the API is much nicer without a bunch of unsafe code to
  work around Pin's limitations.
2022-04-07 15:31:46 +02:00
Robbert van der Helm 63a087f265 Simplify resize handle hover handling 2022-03-29 18:50:34 +02:00
Robbert van der Helm 8d91020238 Fix typo in comment 2022-03-29 17:10:45 +02:00
Robbert van der Helm 7990307b58 Optimize resize handle triangle intersection
I guess doing these other checks doesn't really make much sense since
the triangle will always be in the same place.
2022-03-29 17:05:48 +02:00
Robbert van der Helm 7db6101aea Only resize when clicking on the triangle part 2022-03-29 17:01:35 +02:00
Robbert van der Helm 7b9eff456c Update for new vizia resize patch
This version uses a property on the context instead of events. This gets
rid of all of the problems and complexity of the previous
implementation.
2022-03-29 00:02:11 +02:00
Robbert van der Helm b9b7903108 Add a lower limit to the GUI size scaling 2022-03-28 00:51:58 +02:00
Robbert van der Helm 772c1ecfaf Add a resize handle widget
This currently only works on Linux, and it causes a random white bar to
be added to the bottom of the GUI.
2022-03-28 00:33:10 +02:00