7
45
Fork
You've already forked nice-plug
22

add generic slider widget to nice-plug-iced #25

Open
opened 2026年05月25日 21:45:55 +02:00 by BillyDM · 2 comments

The nice-plug-iced crate should have a generic slider widget like the one in nice-plug-egui.

The old nih-plug repository had one https://github.com/robbert-vdh/nih-plug/blob/master/nih_plug_iced/src/widgets/param_slider.rs, but it needs to be updated for the current version of iced.

The `nice-plug-iced` crate should have a generic slider widget like the one in `nice-plug-egui`. The old `nih-plug` repository had one https://github.com/robbert-vdh/nih-plug/blob/master/nih_plug_iced/src/widgets/param_slider.rs, but it needs to be updated for the current version of iced.
Author
Owner
Copy link

Oh actually, the widget should be more like the one in vizia-plug, where the value is displayed inside of the slider widget: https://github.com/vizia/vizia-plug/blob/main/src/widgets/param_slider.rs

This widget should also have the following input behavior:

  • standard slider controls
  • If the value is bipolar (like in the screenshot), then the "fill" of the slider should start from the center instead of the start
  • shift+dragging will move the slider slower for fine tuning inputs
  • scrolling up and down with the mouse wheel should also make fine-tuning adjustments (this is pretty standard for audio plugins)
  • alt-clicking should temporarily make the widget behave like a text input widget where the user can enter a value manually
  • integer parameters should be "stepped"

(Also note that the thing underneath the slider widget rectangle is a separate widget, the spacing between widgets just isn't very good in this example.)

Oh actually, the widget should be more like the one in vizia-plug, where the value is displayed inside of the slider widget: https://github.com/vizia/vizia-plug/blob/main/src/widgets/param_slider.rs This widget should also have the following input behavior: * standard slider controls * If the value is bipolar (like in the screenshot), then the "fill" of the slider should start from the center instead of the start * shift+dragging will move the slider slower for fine tuning inputs * scrolling up and down with the mouse wheel should also make fine-tuning adjustments (this is pretty standard for audio plugins) * alt-clicking should temporarily make the widget behave like a text input widget where the user can enter a value manually * integer parameters should be "stepped" (Also note that the thing underneath the slider widget rectangle is a separate widget, the spacing between widgets just isn't very good in this example.)
Author
Owner
Copy link

Additionally, the widget should integrate nicely with nih-plug's "gesture start/end" semantics that notifies the host when the user is in the process of tweaking a parameter.

Currently the example plugin just does this, which is not ideal: https://codeberg.org/RustAudio/nice-plug/src/commit/f64c61ec151d264afb60900363b8ad690535daa9/examples/gain_iced/src/lib.rs#L267

Additionally, the widget should integrate nicely with nih-plug's "gesture start/end" semantics that notifies the host when the user is in the process of tweaking a parameter. Currently the example plugin just does this, which is not ideal: <https://codeberg.org/RustAudio/nice-plug/src/commit/f64c61ec151d264afb60900363b8ad690535daa9/examples/gain_iced/src/lib.rs#L267>
Sign in to join this conversation.
No Branch/Tag specified
main
resizing
dev
standalone_fixes
FoobarIT/main
fixes
egui_3rd_party
vizia_baseview_update
egui_32
softbuffer
byo_gui_examples
raw_graphics_examples
v0.1.9
v0.1.8
v0.1.7
v0.1.6
v0.1.5
v0.1.3
Milestone
Clear milestone
No items
No milestone
Projects
Clear projects
No items
No project
Assignees
Clear assignees
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
RustAudio/nice-plug#25
Reference in a new issue
RustAudio/nice-plug
No description provided.
Delete branch "%!s()"

Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?