#pragma once #include #include "../Resources.h" namespace serum { // =========================================================================== // Rotary knob — a juce::Slider styled by SerumLookAndFeel. The value readout is // formatted by a user-provided function via getTextFromValue(). // =========================================================================== class Knob : public juce::Slider { public: explicit Knob (const juce::String& name, std::function formatter = {}); void setFormatter (std::function f) { formatter = std::move (f); } juce::String getTextFromValue (double value) override; private: std::function formatter; }; } // namespace serum