![]() |
StoneyVCV v2
StoneyDSP Modules for VCV Rack 2.
|
#include <RoundKnobWidget.hpp>
Public Types | |
| using | DrawArgs = ::StoneyDSP::StoneyVCV::ComponentLibrary::ThemedParamPanelWidget::DrawArgs |
Public Types inherited from StoneyDSP::StoneyVCV::ComponentLibrary::ThemedParamPanelWidget | |
| enum | Type { KNOB , SLIDER , BUTTON , SWITCH } |
| using | DrawArgs = ::StoneyDSP::StoneyVCV::ComponentLibrary::TransparentWidget::DrawArgs |
Public Types inherited from StoneyDSP::StoneyVCV::ComponentLibrary::TransparentWidget | |
| using | DrawArgs = ::StoneyDSP::StoneyVCV::ComponentLibrary::Widget::DrawArgs |
Public Types inherited from StoneyDSP::StoneyVCV::ComponentLibrary::Widget | |
| using | DrawArgs = ::rack::widget::Widget::DrawArgs |
Protected Attributes | |
| float | minAngle = (0.0F - (5.0F / 6.0F)) * M_PI |
| float | maxAngle = (5.0F / 6.0F) * M_PI |
Protected Attributes inherited from StoneyDSP::StoneyVCV::ComponentLibrary::ThemedParamPanelWidget | |
| float | fontSize = 8.0F |
| float | leading = 4.0F |
| ::std::string | labelText = "" |
| bool | isBipolar |
Protected Attributes inherited from StoneyDSP::StoneyVCV::ComponentLibrary::Widget | |
| ::rack::math::Rect | box = ::rack::math::Rect(::rack::math::Vec(), ::rack::math::Vec(INFINITY, INFINITY)) |
Position relative to parent and size of Widget. | |
| ::rack::Widget * | parent = NULL |
Automatically set when Widget is added as a child to another Widget. | |
| ::std::list<::rack::Widget * > | children |
| bool | visible = true |
| Disables rendering but allow stepping. | |
| bool | requestedDelete = false |
If set to true, parent will delete Widget in the next step(). | |
| float | lastPixelRatio = { rack::contextGet() ->window->pixelRatio} |
| const float * | pixelRatioPtr = NULL |
Additional Inherited Members | |
Public Attributes inherited from StoneyDSP::StoneyVCV::ComponentLibrary::ThemedParamPanelWidget | |
| ::StoneyDSP::StoneyVCV::ComponentLibrary::ThemedParamPanelWidget::Type | type = ::StoneyDSP::StoneyVCV::ComponentLibrary::ThemedParamPanelWidget::Type::KNOB |
| using StoneyDSP::StoneyVCV::ComponentLibrary::ThemedRoundKnobPanelWidget::DrawArgs = ::StoneyDSP::StoneyVCV::ComponentLibrary::ThemedParamPanelWidget::DrawArgs |
|
inline |
|
inlinevirtualnoexcept |
|
privatedelete |
|
privatedelete |
|
inlineoverridevirtual |
Advances the ThemedParamPanelWidget by one frame.
Calls the superclass's step() method internally to recurse the children.
Reimplemented from StoneyDSP::StoneyVCV::ComponentLibrary::ThemedParamPanelWidget.
|
inline |
|
inline |
|
inlineoverridevirtual |
Renders the ThemedParamPanelWidget to the NanoVG context.
Calls the superclass's draw(args) method internally to recurse the children.
| args |
Use the 'ranges' iterable to draw a list of lines on the knob panel, indicating useful positions such as the knob's minimum and maximum positions, the default position when double-clicked, the mid-point for bi-polar knobs, and snap points, if any.
TODO: This widget should read the values - specified in radians - carried by the 'ranges' vector member. It purposely makes no attempts at creating equidistant spaces between given 'ranges', allowing for any arbitrary position(s) to be marked out on the knob panel. If some spacing scheme is required, calculate that on the outside after instanstating this class, and pass the results as an iterable to a setRanges() method - be aware that the method re-allocates if your number of ranges is greater than the default, or previously
Reimplemented from StoneyDSP::StoneyVCV::ComponentLibrary::ThemedParamPanelWidget.
|
inlinevirtual |
|
inlinevirtualnoexcept |
|
inlinevirtual |
|
inlinevirtualnoexcept |
|
privatedelete |
|
privatedelete |
|
protected |
|
protected |