Implement the rest of parameters / user-settings
Signed-off-by: falkTX <falktx@falktx.com>
This commit is contained in:
parent
f31343119b
commit
08b6a8ef8b
4 changed files with 168 additions and 7 deletions
|
|
@ -18,6 +18,7 @@
|
|||
#include <app/Scene.hpp>
|
||||
#include <context.hpp>
|
||||
#include <patch.hpp>
|
||||
#include <settings.hpp>
|
||||
#include <ui/Button.hpp>
|
||||
#include <ui/MenuItem.hpp>
|
||||
#include <window/Window.hpp>
|
||||
|
|
@ -169,12 +170,15 @@ public:
|
|||
repaint();
|
||||
}
|
||||
|
||||
void WindowParametersChanged(const WindowParameterList param, const float value) override
|
||||
void WindowParametersChanged(const WindowParameterList param, float value) override
|
||||
{
|
||||
float mult;
|
||||
float mult = 1.0f;
|
||||
|
||||
switch (param)
|
||||
{
|
||||
case kWindowParameterShowTooltips:
|
||||
fWindowParameters.tooltips = value > 0.5f;
|
||||
break;
|
||||
case kWindowParameterCableOpacity:
|
||||
mult = 100.0f;
|
||||
fWindowParameters.cableOpacity = value;
|
||||
|
|
@ -191,6 +195,33 @@ public:
|
|||
mult = 100.0f;
|
||||
fWindowParameters.haloBrightness = value;
|
||||
break;
|
||||
case kWindowParameterKnobMode:
|
||||
switch (static_cast<int>(value + 0.5f))
|
||||
{
|
||||
case rack::settings::KNOB_MODE_LINEAR:
|
||||
value = 0;
|
||||
fWindowParameters.knobMode = rack::settings::KNOB_MODE_LINEAR;
|
||||
break;
|
||||
case rack::settings::KNOB_MODE_ROTARY_ABSOLUTE:
|
||||
value = 1;
|
||||
fWindowParameters.knobMode = rack::settings::KNOB_MODE_ROTARY_ABSOLUTE;
|
||||
break;
|
||||
case rack::settings::KNOB_MODE_ROTARY_RELATIVE:
|
||||
value = 2;
|
||||
fWindowParameters.knobMode = rack::settings::KNOB_MODE_ROTARY_RELATIVE;
|
||||
break;
|
||||
}
|
||||
break;
|
||||
case kWindowParameterWheelKnobControl:
|
||||
fWindowParameters.knobScroll = value > 0.5f;
|
||||
break;
|
||||
case kWindowParameterWheelSensitivity:
|
||||
mult = 1000.0f;
|
||||
fWindowParameters.knobScrollSensitivity = value;
|
||||
break;
|
||||
case kWindowParameterLockModulePositions:
|
||||
fWindowParameters.lockModules = value > 0.5f;
|
||||
break;
|
||||
default:
|
||||
return;
|
||||
}
|
||||
|
|
@ -213,6 +244,9 @@ protected:
|
|||
|
||||
switch (index - kModuleParameters)
|
||||
{
|
||||
case kWindowParameterShowTooltips:
|
||||
fWindowParameters.tooltips = value > 0.5f;
|
||||
break;
|
||||
case kWindowParameterCableOpacity:
|
||||
fWindowParameters.cableOpacity = value / 100.0f;
|
||||
break;
|
||||
|
|
@ -225,6 +259,29 @@ protected:
|
|||
case kWindowParameterHaloBrightness:
|
||||
fWindowParameters.haloBrightness = value / 100.0f;
|
||||
break;
|
||||
case kWindowParameterKnobMode:
|
||||
switch (static_cast<int>(value + 0.5f))
|
||||
{
|
||||
case 0:
|
||||
fWindowParameters.knobMode = rack::settings::KNOB_MODE_LINEAR;
|
||||
break;
|
||||
case 1:
|
||||
fWindowParameters.knobMode = rack::settings::KNOB_MODE_ROTARY_ABSOLUTE;
|
||||
break;
|
||||
case 2:
|
||||
fWindowParameters.knobMode = rack::settings::KNOB_MODE_ROTARY_RELATIVE;
|
||||
break;
|
||||
}
|
||||
break;
|
||||
case kWindowParameterWheelKnobControl:
|
||||
fWindowParameters.knobScroll = value > 0.5f;
|
||||
break;
|
||||
case kWindowParameterWheelSensitivity:
|
||||
fWindowParameters.knobScrollSensitivity = value / 1000.0f;
|
||||
break;
|
||||
case kWindowParameterLockModulePositions:
|
||||
fWindowParameters.lockModules = value > 0.5f;
|
||||
break;
|
||||
default:
|
||||
return;
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue