Class EndlessKnob
- Namespace
- PluginUI
- Assembly
- PluginUI.dll
Endless rotary encoder: turns without limits and reports steps through Turned (preset browsing, list scrolling, fine tuning). Optionally drives a parameter by StepSize per step, with wrap-around.
public class EndlessKnob : Control
- Inheritance
-
EndlessKnob
- Inherited Members
Constructors
EndlessKnob()
Creates an encoder.
public EndlessKnob()
Properties
Angle
Current visual angle in degrees.
public float Angle { get; }
Property Value
DefaultSize
Natural size used when no explicit size is given.
protected override Size DefaultSize { get; }
Property Value
Parameter
Optional parameter changed by StepSize per step.
public IParameter? Parameter { get; set; }
Property Value
PixelsPerStep
Mouse travel (DIPs) for one step.
public float PixelsPerStep { get; set; }
Property Value
RidgeCount
Number of grip ridges drawn on the body.
public int RidgeCount { get; set; }
Property Value
StepSize
Normalized change per step (0 = one parameter step, or 1 %).
public double StepSize { get; set; }
Property Value
StepsPerRevolution
Steps per full visual revolution.
public int StepsPerRevolution { get; set; }
Property Value
ValueText
Text drawn in the value area (null = no value area).
public override string? ValueText { get; }
Property Value
Wrap
Wraps from 1 to 0 (and back) instead of stopping at the ends.
public bool Wrap { get; set; }
Property Value
Methods
OnAttached()
Called when the element joins a host (subscribe to external events here).
protected override void OnAttached()
OnCaptureLost()
The mouse capture was lost without a button release.
protected override void OnCaptureLost()
OnDetached()
Called when the element leaves its host (unsubscribe here).
protected override void OnDetached()
OnKeyDown(KeyEventArgs)
Key pressed while focused (bubbles to parents).
protected override void OnKeyDown(KeyEventArgs e)
Parameters
OnMouseDown(MouseEventArgs)
Mouse button pressed over the element (or captured).
protected override void OnMouseDown(MouseEventArgs e)
Parameters
OnMouseMove(MouseEventArgs)
Mouse moved over the element (or captured).
protected override void OnMouseMove(MouseEventArgs e)
Parameters
OnMouseUp(MouseEventArgs)
Mouse button released.
protected override void OnMouseUp(MouseEventArgs e)
Parameters
OnMouseWheel(MouseEventArgs)
Mouse wheel over the element.
protected override void OnMouseWheel(MouseEventArgs e)
Parameters
RenderVector(DrawingContext, Rect, VectorStyle)
Vector rendering of the widget area.
protected override void RenderVector(DrawingContext dc, Rect widget, VectorStyle style)
Parameters
dcDrawingContextwidgetRectstyleVectorStyle
Turn(int)
Applies steps as if turned by the user.
public void Turn(int steps)
Parameters
stepsint
Events
Turned
Raised for every step turned (positive = clockwise / up).
public event Action<EndlessKnob, int>? Turned